700
How can I filter the check-boxes (method 1)

EXGRIDLib.Column var_Column = (axGrid1.Columns.Add("Check") as EXGRIDLib.Column);
	EXGRIDLib.Editor var_Editor = var_Column.Editor;
		var_Editor.EditType = EXGRIDLib.EditTypeEnum.CheckValueType;
		var_Editor.set_Option(EXGRIDLib.EditorOptionEnum.exCheckValue2,1);
	var_Column.DisplayFilterButton = true;
	var_Column.DisplayFilterPattern = false;
	var_Column.FilterType = EXGRIDLib.FilterTypeEnum.exCheck;
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.AddItem(true);
	var_Items.AddItem(true);
	var_Items.AddItem(false);
	var_Items.AddItem(true);
	var_Items.AddItem(false);
	var_Items.AddItem(true);
	var_Items.AddItem(false);

699
How can add a button to control

// ButtonClick event - Occurs when user clicks on the cell's button.
private void axGrid1_ButtonClick(object sender, AxEXGRIDLib._IGridEvents_ButtonClickEvent e)
{
	System.Diagnostics.Debug.Print( "ButtonClick" );
	System.Diagnostics.Debug.Print( axGrid1.Items.get_CellCaption(e.item,e.colIndex) );
	System.Diagnostics.Debug.Print( e.key.ToString() );
}
//this.axGrid1.ButtonClick += new AxEXGRIDLib._IGridEvents_ButtonClickEventHandler(this.axGrid1_ButtonClick);

axGrid1.BeginUpdate();
axGrid1.DefaultItemHeight = 22;
axGrid1.HeaderHeight = 22;
axGrid1.Appearance = EXGRIDLib.AppearanceEnum.None2;
axGrid1.DrawGridLines = EXGRIDLib.GridLinesEnum.exRowLines;
axGrid1.ScrollBySingleLine = false;
axGrid1.Images("gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTq" +
"lVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m" +
"0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/y" +
"NAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=");
axGrid1.set_HTMLPicture("pic1","c:\\exontrol\\images\\auction.gif");
EXGRIDLib.Columns var_Columns = axGrid1.Columns;
	EXGRIDLib.Column var_Column = (var_Columns.Add("Type") as EXGRIDLib.Column);
		var_Column.Width = 48;
		var_Column.set_Def(EXGRIDLib.DefColumnEnum.exCellValueFormat,1);
	EXGRIDLib.Column var_Column1 = (var_Columns.Add("Appearance") as EXGRIDLib.Column);
		var_Column1.set_Def(EXGRIDLib.DefColumnEnum.exCellValueFormat,1);
		var_Column1.Alignment = EXGRIDLib.AlignmentEnum.CenterAlignment;
		var_Column1.HeaderAlignment = EXGRIDLib.AlignmentEnum.CenterAlignment;
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h = var_Items.AddItem("Items.<b>CellHasButton</b> property");
	var_Items.set_CellValue(h,1,"Button <b>1</b>");
	var_Items.set_CellHasButton(h,1,true);
	h = var_Items.AddItem("Items.<b>CellButtonAutoWidth</b> property");
	var_Items.set_CellValue(h,1," Button <b>2</b> ");
	var_Items.set_CellHasButton(h,1,true);
	var_Items.set_CellButtonAutoWidth(h,1,true);
	h = var_Items.AddItem("Items.<b>CellHasButton</b> property");
	var_Items.set_CellValue(h,1," <img>2</img>Button <b>3</b> ");
	var_Items.set_CellHasButton(h,1,true);
	var_Items.set_CellButtonAutoWidth(h,1,true);
	h = var_Items.AddItem("Items.<b>CellHasButton</b> property");
	var_Items.set_ItemHeight(h,32);
	var_Items.set_CellValue(h,1," <img>2</img>Button <b>4</b> <img>pic1</img> ");
	var_Items.set_CellHasButton(h,1,true);
	var_Items.set_CellButtonAutoWidth(h,1,true);
	h = var_Items.AddItem("Items.<b>CellHasButton</b> in splitted cells");
	var_Items.set_CellValue(h,1," Button <b>5.1</b> ");
	var_Items.set_CellHasButton(h,1,true);
	var_Items.set_CellButtonAutoWidth(h,1,true);
	object s = var_Items.get_SplitCell(h,1);
	var_Items.set_CellValue(0,s," Button <b>5.2</b> ");
	var_Items.set_CellHasButton(0,s,true);
	var_Items.set_CellButtonAutoWidth(0,s,true);
	h = var_Items.AddItem("Column.<b>Editor</b>, Items.<b>CellEditor</b>");
	var_Items.set_CellValue(h,1,"Visible when clicking the cell");
	EXGRIDLib.Editor var_Editor = var_Items.get_CellEditor(h,1);
		var_Editor.EditType = EXGRIDLib.EditTypeEnum.EditType;
		var_Editor.AddButton("B1",1,0,"This is a bit of text that's shown when the cursor hovers the button B1",null,null);
		var_Editor.AddButton("B3",2,1,"This is a bit of text that's shown when the cursor hovers the button B3",null,null);
		var_Editor.AddButton("B4",1,1,"This is a bit of text that's shown when the cursor hovers the button B4",null,null);
		var_Editor.ButtonWidth = 24;
	h = var_Items.AddItem("Column.<b>Editor</b>, Items.<b>CellEditor</b>");
	var_Items.set_CellValue(h,1,3);
	EXGRIDLib.Editor var_Editor1 = var_Items.get_CellEditor(h,1);
		var_Editor1.EditType = EXGRIDLib.EditTypeEnum.CheckListType;
		var_Editor1.AddItem(1,"Flag 1",null);
		var_Editor1.AddItem(2,"Flag 2",null);
		var_Editor1.AddItem(4,"Flag 4",null);
		var_Editor1.AddItem(8,"Flag 8",null);
		var_Editor1.AddButton("C1",1,0,"This is a bit of text that's shown when the cursor hovers the button C1",null,null);
		var_Editor1.AddButton("C3",2,0,"This is a bit of text that's shown when the cursor hovers the button C2",null,null);
		var_Editor1.AddButton("C4",1,0,"This is a bit of text that's shown when the cursor hovers the button C3",null,null);
		var_Editor1.ButtonWidth = 24;
axGrid1.EndUpdate();

698
The item is not getting selected when clicking the cell's checkbox. What should I do

// CellStateChanged event - Fired after cell's state has been changed.
private void axGrid1_CellStateChanged(object sender, AxEXGRIDLib._IGridEvents_CellStateChangedEvent e)
{
	axGrid1.Items.set_SelectItem(e.item,true);
}
//this.axGrid1.CellStateChanged += new AxEXGRIDLib._IGridEvents_CellStateChangedEventHandler(this.axGrid1_CellStateChanged);

(axGrid1.Columns.Add("Check") as EXGRIDLib.Column).set_Def(EXGRIDLib.DefColumnEnum.exCellHasCheckBox,true);
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.AddItem(0);
	var_Items.AddItem(1);
	var_Items.AddItem(2);
	var_Items.AddItem(3);

697
Is it possible to limit the height of the item while resizing

// AddItem event - Occurs after a new Item has been inserted to Items collection.
private void axGrid1_AddItem(object sender, AxEXGRIDLib._IGridEvents_AddItemEvent e)
{
	axGrid1.Items.set_ItemMinHeight(e.item,18);
	axGrid1.Items.set_ItemMaxHeight(e.item,72);
}
//this.axGrid1.AddItem += new AxEXGRIDLib._IGridEvents_AddItemEventHandler(this.axGrid1_AddItem);

axGrid1.BeginUpdate();
axGrid1.ItemsAllowSizing = EXGRIDLib.ItemsAllowSizingEnum.exResizeItem;
axGrid1.ScrollBySingleLine = false;
axGrid1.BackColorAlternate = Color.FromArgb(240,240,240);
axGrid1.Columns.Add("Names");
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.AddItem("Mantel");
	var_Items.AddItem("Mechanik");
	var_Items.AddItem("Motor");
	var_Items.AddItem("Murks");
	var_Items.AddItem("Märchen");
	var_Items.AddItem("Möhren");
	var_Items.AddItem("Mühle");
axGrid1.Columns[0].SortOrder = EXGRIDLib.SortOrderEnum.SortAscending;
axGrid1.EndUpdate();

696
Is it possible to copy the hierarchy of the control using the GetItems method

axGrid1.LinesAtRoot = EXGRIDLib.LinesAtRootEnum.exLinesAtRoot;
axGrid1.Columns.Add("Def");
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h = var_Items.AddItem("Root");
	var_Items.InsertItem(h,null,"Child 1");
	var_Items.InsertItem(h,null,"Child 2");
axGrid1.PutItems(axGrid1.GetItems(-1),null);

695
Is it possible to auto-numbering the children items but still keeps the position after filtering

axGrid1.BeginUpdate();
axGrid1.LinesAtRoot = EXGRIDLib.LinesAtRootEnum.exLinesAtRoot;
EXGRIDLib.Column var_Column = (axGrid1.Columns.Add("Items") as EXGRIDLib.Column);
	var_Column.DisplayFilterButton = true;
	var_Column.FilterType = EXGRIDLib.FilterTypeEnum.exFilter;
	var_Column.Filter = "Child 2";
EXGRIDLib.Column var_Column1 = (axGrid1.Columns.Add("Pos.1") as EXGRIDLib.Column);
	var_Column1.FormatColumn = "1 ropos ''";
	var_Column1.Position = 0;
	var_Column1.Width = 32;
	var_Column1.AllowSizing = false;
EXGRIDLib.Column var_Column2 = (axGrid1.Columns.Add("Pos.2") as EXGRIDLib.Column);
	var_Column2.FormatColumn = "1 ropos ':'";
	var_Column2.Position = 1;
	var_Column2.Width = 32;
	var_Column2.AllowSizing = false;
EXGRIDLib.Column var_Column3 = (axGrid1.Columns.Add("Pos.3") as EXGRIDLib.Column);
	var_Column3.FormatColumn = "1 ropos ':|A-Z'";
	var_Column3.Position = 2;
	var_Column3.Width = 32;
	var_Column3.AllowSizing = false;
EXGRIDLib.Column var_Column4 = (axGrid1.Columns.Add("Pos.4") as EXGRIDLib.Column);
	var_Column4.FormatColumn = "1 ropos '|A-Z|'";
	var_Column4.Position = 3;
	var_Column4.Width = 32;
	var_Column4.AllowSizing = false;
EXGRIDLib.Column var_Column5 = (axGrid1.Columns.Add("Pos.5") as EXGRIDLib.Column);
	var_Column5.FormatColumn = "'<font Tahoma;7>' + 1 ropos '-<b>||A-Z'";
	var_Column5.set_Def(EXGRIDLib.DefColumnEnum.exCellValueFormat,1);
	var_Column5.Position = 4;
	var_Column5.Width = 32;
	var_Column5.AllowSizing = false;
EXGRIDLib.Column var_Column6 = (axGrid1.Columns.Add("Pos.6") as EXGRIDLib.Column);
	var_Column6.FormatColumn = "'<b>'+ 1 ropos '</b>:<fgcolor=FF0000>|A-Z|'";
	var_Column6.set_Def(EXGRIDLib.DefColumnEnum.exCellValueFormat,1);
	var_Column6.Position = 5;
	var_Column6.Width = 48;
	var_Column6.AllowSizing = false;
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h = var_Items.AddItem("Root 1");
	var_Items.InsertItem(h,null,"Child 1");
	var_Items.InsertItem(h,null,"Child 2");
	var_Items.set_ExpandItem(h,true);
	h = var_Items.AddItem("Root 2");
	var_Items.InsertItem(h,null,"Child 1");
	var_Items.InsertItem(h,null,"Child 2");
axGrid1.ApplyFilter();
axGrid1.EndUpdate();

694
Is it possible to auto-numbering the children items too

axGrid1.BeginUpdate();
axGrid1.LinesAtRoot = EXGRIDLib.LinesAtRootEnum.exLinesAtRoot;
axGrid1.Columns.Add("Items");
EXGRIDLib.Column var_Column = (axGrid1.Columns.Add("Pos.1") as EXGRIDLib.Column);
	var_Column.FormatColumn = "1 rpos ''";
	var_Column.Position = 0;
	var_Column.Width = 32;
	var_Column.AllowSizing = false;
EXGRIDLib.Column var_Column1 = (axGrid1.Columns.Add("Pos.2") as EXGRIDLib.Column);
	var_Column1.FormatColumn = "1 rpos ':'";
	var_Column1.Position = 1;
	var_Column1.Width = 32;
	var_Column1.AllowSizing = false;
EXGRIDLib.Column var_Column2 = (axGrid1.Columns.Add("Pos.3") as EXGRIDLib.Column);
	var_Column2.FormatColumn = "1 rpos ':|A-Z'";
	var_Column2.Position = 2;
	var_Column2.Width = 32;
	var_Column2.AllowSizing = false;
EXGRIDLib.Column var_Column3 = (axGrid1.Columns.Add("Pos.4") as EXGRIDLib.Column);
	var_Column3.FormatColumn = "1 rpos '|A-Z|'";
	var_Column3.Position = 3;
	var_Column3.Width = 32;
	var_Column3.AllowSizing = false;
EXGRIDLib.Column var_Column4 = (axGrid1.Columns.Add("Pos.5") as EXGRIDLib.Column);
	var_Column4.FormatColumn = "'<font Tahoma;7>' + 1 rpos '-<b>||A-Z'";
	var_Column4.set_Def(EXGRIDLib.DefColumnEnum.exCellValueFormat,1);
	var_Column4.Position = 4;
	var_Column4.Width = 32;
	var_Column4.AllowSizing = false;
EXGRIDLib.Column var_Column5 = (axGrid1.Columns.Add("Pos.6") as EXGRIDLib.Column);
	var_Column5.FormatColumn = "'<b>'+ 1 rpos '</b>:<fgcolor=FF0000>|A-Z|'";
	var_Column5.set_Def(EXGRIDLib.DefColumnEnum.exCellValueFormat,1);
	var_Column5.Position = 5;
	var_Column5.Width = 48;
	var_Column5.AllowSizing = false;
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h = var_Items.AddItem("Root 1");
	var_Items.InsertItem(h,null,"Child 1");
	var_Items.InsertItem(h,null,"Child 2");
	var_Items.set_ExpandItem(h,true);
	h = var_Items.AddItem("Root 2");
	var_Items.InsertItem(h,null,"Child 1");
	var_Items.InsertItem(h,null,"Child 2");
axGrid1.EndUpdate();

693
Is it possible to cancel or discard the values during validation

// ValidateValue event - Occurs before user changes the cell's value.
private void axGrid1_ValidateValue(object sender, AxEXGRIDLib._IGridEvents_ValidateValueEvent e)
{
	System.Diagnostics.Debug.Print( "ValidateValue" );
	System.Diagnostics.Debug.Print( e.newValue.ToString() );
	System.Diagnostics.Debug.Print( "Change the Cancel parameter for ValidateValue event to accept/decline the newly value. " );
	System.Diagnostics.Debug.Print( "The DiscardValidateValue restores back the previously values." );
	axGrid1.DiscardValidateValue();
}
//this.axGrid1.ValidateValue += new AxEXGRIDLib._IGridEvents_ValidateValueEventHandler(this.axGrid1_ValidateValue);

axGrid1.BeginUpdate();
axGrid1.CauseValidateValue = EXGRIDLib.ValidateValueType.exValidateCell;
(axGrid1.Columns.Add("Date") as EXGRIDLib.Column).Editor.EditType = EXGRIDLib.EditTypeEnum.DateType;
(axGrid1.Columns.Add("Text") as EXGRIDLib.Column).Editor.EditType = EXGRIDLib.EditTypeEnum.EditType;
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.set_CellValue(var_Items.AddItem(Convert.ToDateTime("1/1/2001",System.Globalization.CultureInfo.GetCultureInfo("en-US"))),1,"text");
	var_Items.set_CellValue(var_Items.AddItem(Convert.ToDateTime("1/1/2001",System.Globalization.CultureInfo.GetCultureInfo("en-US"))),1,"text");
	var_Items.set_CellValue(var_Items.AddItem(Convert.ToDateTime("1/1/2001",System.Globalization.CultureInfo.GetCultureInfo("en-US"))),1,"text");
	var_Items.set_CellValue(var_Items.AddItem(Convert.ToDateTime("1/1/2001",System.Globalization.CultureInfo.GetCultureInfo("en-US"))),1,"text");
	var_Items.set_CellValue(var_Items.AddItem(Convert.ToDateTime("1/1/2001",System.Globalization.CultureInfo.GetCultureInfo("en-US"))),1,"text");
axGrid1.EndUpdate();

692
Is it possible to validate the values of the cells only when user leaves the focused item
// ValidateValue event - Occurs before user changes the cell's value.
private void axGrid1_ValidateValue(object sender, AxEXGRIDLib._IGridEvents_ValidateValueEvent e)
{
	System.Diagnostics.Debug.Print( "ValidateValue" );
	System.Diagnostics.Debug.Print( e.newValue.ToString() );
	System.Diagnostics.Debug.Print( "Change the Cancel parameter for ValidateValue event to accept/decline the newly value. " );
	e.cancel = true;
	System.Diagnostics.Debug.Print( "You can not leave the item/record until the Cancel is False." );
}
//this.axGrid1.ValidateValue += new AxEXGRIDLib._IGridEvents_ValidateValueEventHandler(this.axGrid1_ValidateValue);

axGrid1.BeginUpdate();
axGrid1.CauseValidateValue = EXGRIDLib.ValidateValueType.exValidateItem;
(axGrid1.Columns.Add("Date") as EXGRIDLib.Column).Editor.EditType = EXGRIDLib.EditTypeEnum.DateType;
(axGrid1.Columns.Add("Text") as EXGRIDLib.Column).Editor.EditType = EXGRIDLib.EditTypeEnum.EditType;
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.set_CellValue(var_Items.AddItem(Convert.ToDateTime("1/1/2001",System.Globalization.CultureInfo.GetCultureInfo("en-US"))),1,"text");
	var_Items.set_CellValue(var_Items.AddItem(Convert.ToDateTime("1/1/2001",System.Globalization.CultureInfo.GetCultureInfo("en-US"))),1,"text");
	var_Items.set_CellValue(var_Items.AddItem(Convert.ToDateTime("1/1/2001",System.Globalization.CultureInfo.GetCultureInfo("en-US"))),1,"text");
	var_Items.set_CellValue(var_Items.AddItem(Convert.ToDateTime("1/1/2001",System.Globalization.CultureInfo.GetCultureInfo("en-US"))),1,"text");
	var_Items.set_CellValue(var_Items.AddItem(Convert.ToDateTime("1/1/2001",System.Globalization.CultureInfo.GetCultureInfo("en-US"))),1,"text");
axGrid1.EndUpdate();

691
We would like to validate the values of the cells. Is it possible

// ValidateValue event - Occurs before user changes the cell's value.
private void axGrid1_ValidateValue(object sender, AxEXGRIDLib._IGridEvents_ValidateValueEvent e)
{
	System.Diagnostics.Debug.Print( "ValidateValue" );
	System.Diagnostics.Debug.Print( e.newValue.ToString() );
	System.Diagnostics.Debug.Print( "Change the Cancel parameter for ValidateValue event to accept/decline the newly value." );
	e.cancel = true;
	System.Diagnostics.Debug.Print( "You can not leave the cell until the Cancel is False." );
}
//this.axGrid1.ValidateValue += new AxEXGRIDLib._IGridEvents_ValidateValueEventHandler(this.axGrid1_ValidateValue);

axGrid1.BeginUpdate();
axGrid1.CauseValidateValue = EXGRIDLib.ValidateValueType.exValidateCell;
(axGrid1.Columns.Add("Date") as EXGRIDLib.Column).Editor.EditType = EXGRIDLib.EditTypeEnum.DateType;
(axGrid1.Columns.Add("Text") as EXGRIDLib.Column).Editor.EditType = EXGRIDLib.EditTypeEnum.EditType;
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.set_CellValue(var_Items.AddItem(Convert.ToDateTime("1/1/2001",System.Globalization.CultureInfo.GetCultureInfo("en-US"))),1,"text");
	var_Items.set_CellValue(var_Items.AddItem(Convert.ToDateTime("1/1/2001",System.Globalization.CultureInfo.GetCultureInfo("en-US"))),1,"text");
	var_Items.set_CellValue(var_Items.AddItem(Convert.ToDateTime("1/1/2001",System.Globalization.CultureInfo.GetCultureInfo("en-US"))),1,"text");
	var_Items.set_CellValue(var_Items.AddItem(Convert.ToDateTime("1/1/2001",System.Globalization.CultureInfo.GetCultureInfo("en-US"))),1,"text");
	var_Items.set_CellValue(var_Items.AddItem(Convert.ToDateTime("1/1/2001",System.Globalization.CultureInfo.GetCultureInfo("en-US"))),1,"text");
axGrid1.EndUpdate();

690
Is there any way to add auto-numbering

EXGRIDLib.Columns var_Columns = axGrid1.Columns;
	var_Columns.Add("Items");
	EXGRIDLib.Column var_Column = (var_Columns.Add("Pos") as EXGRIDLib.Column);
		var_Column.FormatColumn = "1 pos ''";
		var_Column.Position = 0;
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.AddItem("Item 1");
	var_Items.AddItem("Item 2");
	var_Items.AddItem("Item 3");

689
Does your control supports multiple lines tooltip

axGrid1.set_HTMLPicture("pic1","c:\\exontrol\\images\\zipdisk.gif");
axGrid1.ToolTipDelay = 1;
(axGrid1.Columns.Add("tootip") as EXGRIDLib.Column).ToolTip = "<br><font Tahoma;10>This</font> is a <b>multi-lines</b> tooltip assigned to a column. The tooltip supports built-in HTML tags, " +
"icons and pictures.<br><br><br><img>pic1</img> picture ... <br><br>";

688
How can I prevent highlighting the column from the cursor - point

axGrid1.VisualAppearance.Add(1,"gBFLBCJwBAEHhEJAEGg4BI0IQAAYAQGKIYBkAKBQAGaAoDDUOQzQwAAxDKKUEwsACEIrjKCYVgOHYYRrIMYgBCMJhLEoaZLhEZRQiqDYtRDFQBSDDcPw/EaRZohGaYJ" +
"gEgI=");
axGrid1.set_Background(EXGRIDLib.BackgroundPartEnum.exCursorHoverColumn,0x1000000);
(axGrid1.Columns.Add("S") as EXGRIDLib.Column).Width = 32;
(axGrid1.Columns.Add("Level 1") as EXGRIDLib.Column).LevelKey = 1;
(axGrid1.Columns.Add("Level 2") as EXGRIDLib.Column).LevelKey = 1;
(axGrid1.Columns.Add("Level 3") as EXGRIDLib.Column).LevelKey = 1;
(axGrid1.Columns.Add("E1") as EXGRIDLib.Column).Width = 32;
(axGrid1.Columns.Add("E2") as EXGRIDLib.Column).Width = 32;
(axGrid1.Columns.Add("E3") as EXGRIDLib.Column).Width = 32;
(axGrid1.Columns.Add("E4") as EXGRIDLib.Column).Width = 32;

687
Is it possible display numbers in the same format no matter of regional settings in the control panel

axGrid1.BeginUpdate();
(axGrid1.Columns.Add("Def") as EXGRIDLib.Column).set_Def(EXGRIDLib.DefColumnEnum.exCellValueFormat,1);
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h = var_Items.AddItem(100000.27);
	var_Items.set_FormatCell(h,0,"(value format '') +  ' <fgcolor=808080>(default positive)'");
	h = var_Items.AddItem(100000.27);
	var_Items.set_FormatCell(h,0,"(value format '2|.|3|,|1|1')");
	h = var_Items.AddItem(-100000.27);
	var_Items.set_FormatCell(h,0,"(value format '') +  ' <fgcolor=808080>(default negative)'");
	h = var_Items.AddItem(-100000.27);
	var_Items.set_FormatCell(h,0,"(value format '2|.|3|,|1|1')");
axGrid1.EndUpdate();

686
Is it possible to add a 0 for numbers less than 1 instead .7 to show 0.8

axGrid1.BeginUpdate();
(axGrid1.Columns.Add("Def") as EXGRIDLib.Column).set_Def(EXGRIDLib.DefColumnEnum.exCellValueFormat,1);
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h = var_Items.AddItem(0.27);
	var_Items.set_FormatCell(h,0,"(value format '') +  ' <fgcolor=808080>(default)'");
	h = var_Items.AddItem(0.27);
	var_Items.set_FormatCell(h,0,"(value format '|||||0') +  ' <fgcolor=808080>(Display no leading zeros)'");
axGrid1.EndUpdate();

685
How can I specify the format for negative numbers

axGrid1.BeginUpdate();
(axGrid1.Columns.Add("Def") as EXGRIDLib.Column).set_Def(EXGRIDLib.DefColumnEnum.exCellValueFormat,1);
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h = var_Items.AddItem(-100000.27);
	var_Items.set_FormatCell(h,0,"(value format '') +  ' <fgcolor=808080>(default)'");
	h = var_Items.AddItem(-100000.27);
	var_Items.set_FormatCell(h,0,"(value format '||||1') +  ' <fgcolor=808080>(Negative sign, number; for example, -1.1)'");
axGrid1.EndUpdate();

684
Is it possible to change the grouping character when display numbers

axGrid1.BeginUpdate();
(axGrid1.Columns.Add("Def") as EXGRIDLib.Column).set_Def(EXGRIDLib.DefColumnEnum.exCellValueFormat,1);
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h = var_Items.AddItem(100000.27);
	var_Items.set_FormatCell(h,0,"(value format '') +  ' <fgcolor=808080>(default)'");
	h = var_Items.AddItem(100000.27);
	var_Items.set_FormatCell(h,0,"(value format '|||-') +  ' <fgcolor=808080>(grouping character is -)'");
axGrid1.EndUpdate();

683
How can I display numbers with 2 digits in each group

axGrid1.BeginUpdate();
(axGrid1.Columns.Add("Def") as EXGRIDLib.Column).set_Def(EXGRIDLib.DefColumnEnum.exCellValueFormat,1);
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h = var_Items.AddItem(100000.27);
	var_Items.set_FormatCell(h,0,"(value format '') +  ' <fgcolor=808080>(default)'");
	h = var_Items.AddItem(100000.27);
	var_Items.set_FormatCell(h,0,"(value format '||2') +  ' <fgcolor=808080>(grouping by 2 digits)'");
axGrid1.EndUpdate();

682
How can I display my numbers using a different decimal separator

axGrid1.BeginUpdate();
(axGrid1.Columns.Add("Def") as EXGRIDLib.Column).set_Def(EXGRIDLib.DefColumnEnum.exCellValueFormat,1);
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h = var_Items.AddItem(100.27);
	var_Items.set_FormatCell(h,0,"(value format '') +  ' <fgcolor=808080>(default)'");
	h = var_Items.AddItem(100.27);
	var_Items.set_FormatCell(h,0,"(value format '|;') +  ' <fgcolor=808080>(decimal separator is <b>;</b>)'");
axGrid1.EndUpdate();

681
Is it possible to display the numbers using 3 (three) digits

axGrid1.BeginUpdate();
(axGrid1.Columns.Add("Def") as EXGRIDLib.Column).set_Def(EXGRIDLib.DefColumnEnum.exCellValueFormat,1);
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h = var_Items.AddItem(100.27);
	var_Items.set_FormatCell(h,0,"(value format '') +  ' <fgcolor=808080>(default)'");
	h = var_Items.AddItem(100.27);
	var_Items.set_FormatCell(h,0,"(value format '3') +  ' <fgcolor=808080>(3 digits)'");
	h = var_Items.AddItem(100.27);
	var_Items.set_FormatCell(h,0,"(value format 2) +  '  <fgcolor=808080>(2 digits)'");
	h = var_Items.AddItem(100.27);
	var_Items.set_FormatCell(h,0,"(value format 1) +  ' <fgcolor=808080>(1 digit)'");
axGrid1.EndUpdate();

680
Is there any option to show the tooltip programmatically

// MouseMove event - Occurs when the user moves the mouse.
private void axGrid1_MouseMoveEvent(object sender, AxEXGRIDLib._IGridEvents_MouseMoveEvent e)
{
	axGrid1.ShowToolTip(axGrid1.get_ItemFromPoint(-1,-1,c,hit).ToString(),"","8","8",null);
}
//this.axGrid1.MouseMoveEvent += new AxEXGRIDLib._IGridEvents_MouseMoveEventHandler(this.axGrid1_MouseMoveEvent);

axGrid1.BeginUpdate();
axGrid1.Columns.Add("Def");
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.AddItem("Item 1");
	var_Items.AddItem("Item 2");
	var_Items.AddItem("Item 3");
axGrid1.EndUpdate();

679
How can I specify the column's width to be the same for all columns

EXGRIDLib.Columns var_Columns = axGrid1.Columns;
	var_Columns.Add("A");
	var_Columns.Add("B");
	var_Columns.Add("C");
axGrid1.DrawGridLines = EXGRIDLib.GridLinesEnum.exAllLines;
axGrid1.ColumnAutoResize = true;

678
How can I set the column's width to my desired width

axGrid1.ColumnAutoResize = false;
EXGRIDLib.Columns var_Columns = axGrid1.Columns;
	(var_Columns.Add("A") as EXGRIDLib.Column).Width = 128;
	(var_Columns.Add("B") as EXGRIDLib.Column).Width = 128;
axGrid1.DrawGridLines = EXGRIDLib.GridLinesEnum.exAllLines;

677
Is it possible to format numbers

axGrid1.BeginUpdate();
axGrid1.MarkSearchColumn = false;
EXGRIDLib.Columns var_Columns = axGrid1.Columns;
	var_Columns.Add("Name");
	EXGRIDLib.Column var_Column = (var_Columns.Add("A") as EXGRIDLib.Column);
		var_Column.SortType = EXGRIDLib.SortTypeEnum.SortNumeric;
		var_Column.AllowSizing = false;
		var_Column.Width = 36;
		var_Column.FormatColumn = "len(value) ? value + ' +'";
		var_Column.Editor.EditType = EXGRIDLib.EditTypeEnum.SpinType;
	EXGRIDLib.Column var_Column1 = (var_Columns.Add("B") as EXGRIDLib.Column);
		var_Column1.SortType = EXGRIDLib.SortTypeEnum.SortNumeric;
		var_Column1.AllowSizing = false;
		var_Column1.Width = 36;
		var_Column1.FormatColumn = "len(value) ? value + ' +'";
		var_Column1.Editor.EditType = EXGRIDLib.EditTypeEnum.SpinType;
	EXGRIDLib.Column var_Column2 = (var_Columns.Add("C") as EXGRIDLib.Column);
		var_Column2.SortType = EXGRIDLib.SortTypeEnum.SortNumeric;
		var_Column2.AllowSizing = false;
		var_Column2.Width = 36;
		var_Column2.FormatColumn = "len(value) ? value + ' ='";
		var_Column2.Editor.EditType = EXGRIDLib.EditTypeEnum.SpinType;
	EXGRIDLib.Column var_Column3 = (var_Columns.Add("A+B+C") as EXGRIDLib.Column);
		var_Column3.SortType = EXGRIDLib.SortTypeEnum.SortNumeric;
		var_Column3.Width = 64;
		var_Column3.ComputedField = "dbl(%1)+dbl(%2)+dbl(%3)";
		var_Column3.FormatColumn = "type(value) in (0,1) ? 'null' : ( dbl(value)<0 ? '<fgcolor=FF0000>'+ (value format '2|.|3|,|1' ) : (dbl(value)>0 ? '<fgcolor=00" +
"00FF>+'+(value format '2|.|3|,' ): '0.00') )";
		var_Column3.set_Def(EXGRIDLib.DefColumnEnum.exCellValueFormat,1);
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h = var_Items.AddItem("Root");
	var_Items.set_CellValueFormat(h,4,EXGRIDLib.ValueFormatEnum.exComputedField);
	int h1 = var_Items.InsertItem(h,null,"Child 1");
	var_Items.set_CellValue(h1,1,7);
	var_Items.set_CellValue(h1,2,3);
	var_Items.set_CellValue(h1,3,1);
	h1 = var_Items.InsertItem(h,null,"Child 2");
	var_Items.set_CellValue(h1,1,-2);
	var_Items.set_CellValue(h1,2,-2);
	var_Items.set_CellValue(h1,3,-4);
	h1 = var_Items.InsertItem(h,null,"Child 3");
	var_Items.set_CellValue(h1,1,2);
	var_Items.set_CellValue(h1,2,2);
	var_Items.set_CellValue(h1,3,-4);
	var_Items.set_ExpandItem(h,true);
axGrid1.EndUpdate();

676
How can I collapse all items

axGrid1.BeginUpdate();
axGrid1.LinesAtRoot = EXGRIDLib.LinesAtRootEnum.exLinesAtRoot;
axGrid1.Columns.Add("Items");
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h = var_Items.AddItem("Root 1");
	var_Items.InsertItem(h,null,"Child 1");
	var_Items.InsertItem(h,null,"Child 2");
	h = var_Items.AddItem("Root 2");
	var_Items.InsertItem(h,null,"Child 1");
	var_Items.InsertItem(h,null,"Child 2");
	var_Items.set_ExpandItem(0,false);
axGrid1.EndUpdate();

675
How can I expand all items

axGrid1.BeginUpdate();
axGrid1.LinesAtRoot = EXGRIDLib.LinesAtRootEnum.exLinesAtRoot;
axGrid1.Columns.Add("Items");
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h = var_Items.AddItem("Root 1");
	var_Items.InsertItem(h,null,"Child 1");
	var_Items.InsertItem(h,null,"Child 2");
	h = var_Items.AddItem("Root 2");
	var_Items.InsertItem(h,null,"Child 1");
	var_Items.InsertItem(h,null,"Child 2");
	var_Items.set_ExpandItem(0,true);
axGrid1.EndUpdate();

674
Can I display a total field without having to add a child item

axGrid1.BeginUpdate();
EXGRIDLib.Column var_Column = (axGrid1.Columns.Add("Numbers") as EXGRIDLib.Column);
	var_Column.SortType = EXGRIDLib.SortTypeEnum.SortNumeric;
	EXGRIDLib.Editor var_Editor = var_Column.Editor;
		var_Editor.EditType = EXGRIDLib.EditTypeEnum.SpinType;
		var_Editor.Numeric = EXGRIDLib.NumericEnum.exFloat;
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.AddItem(1);
	var_Items.AddItem(2);
	var_Items.AddItem(3);
	var_Items.AddItem(4);
	var_Items.set_LockedItemCount(EXGRIDLib.VAlignmentEnum.exBottom,1);
	int h = var_Items.get_LockedItem(EXGRIDLib.VAlignmentEnum.exBottom,0);
	var_Items.set_CellValue(h,0,"sum(all,dir,dbl(%0))");
	var_Items.set_SortableItem(h,false);
	var_Items.set_CellValueFormat(h,0,EXGRIDLib.ValueFormatEnum.exTotalField);
	var_Items.set_CellHAlignment(h,0,EXGRIDLib.AlignmentEnum.RightAlignment);
	var_Items.set_FormatCell(h,0,"'SUM: '+value");
axGrid1.EndUpdate();

673
Can I display the number of child items

axGrid1.BeginUpdate();
axGrid1.LinesAtRoot = EXGRIDLib.LinesAtRootEnum.exGroupLinesAtRoot;
axGrid1.Columns.Add("");
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h = var_Items.AddItem("Root 1");
	object hx = var_Items.get_SplitCell(h,0);
	var_Items.set_CellValue(0,hx,"count(current,dir,1)");
	var_Items.set_CellValueFormat(0,hx,EXGRIDLib.ValueFormatEnum.exTotalField);
	var_Items.set_FormatCell(0,hx,"'Childs: ' + value");
	var_Items.InsertItem(h,null,"Child 1");
	var_Items.InsertItem(h,null,"Child 2");
	var_Items.set_ExpandItem(h,true);
	h = var_Items.AddItem("Root 2");
	hx = var_Items.get_SplitCell(h,0);
	var_Items.set_CellValue(0,hx,"count(current,dir,1)");
	var_Items.set_CellValueFormat(0,hx,EXGRIDLib.ValueFormatEnum.exTotalField);
	var_Items.set_FormatCell(0,hx,"'Childs: ' + value");
	var_Items.InsertItem(h,null,"Child 1");
	var_Items.InsertItem(h,null,"Child 2");
	var_Items.InsertItem(h,null,"Child 3");
	var_Items.InsertItem(h,null,"Child 4");
axGrid1.EndUpdate();

672
My field does not display the correctly computed value if I enter data using the control's editors ( concatenation of strings ). What am I doing wrong

axGrid1.BeginUpdate();
axGrid1.Columns.Add("T");
EXGRIDLib.Editor var_Editor = (axGrid1.Columns.Add("A") as EXGRIDLib.Column).Editor;
	var_Editor.Numeric = EXGRIDLib.NumericEnum.exInteger;
	var_Editor.EditType = EXGRIDLib.EditTypeEnum.SpinType;
EXGRIDLib.Editor var_Editor1 = (axGrid1.Columns.Add("B") as EXGRIDLib.Column).Editor;
	var_Editor1.Numeric = EXGRIDLib.NumericEnum.exInteger;
	var_Editor1.EditType = EXGRIDLib.EditTypeEnum.SpinType;
axGrid1.Columns.Add("A+B");
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h = var_Items.AddItem("Incorrect");
	var_Items.set_CellToolTip(h,0,"Just type a number in the column A or B. The result will be concaternated");
	var_Items.set_CellValue(h,1,"10");
	var_Items.set_CellValue(h,2,"20");
	var_Items.set_CellValue(h,3,"currency(%1+%2)");
	var_Items.set_CellValueFormat(h,3,EXGRIDLib.ValueFormatEnum.exComputedField);
	h = var_Items.AddItem("Correct");
	var_Items.set_CellValue(h,1,10);
	var_Items.set_CellValue(h,2,20);
	var_Items.set_CellValue(h,3,"currency(dbl(%1)+dbl(%2))");
	var_Items.set_CellValueFormat(h,3,EXGRIDLib.ValueFormatEnum.exComputedField);
axGrid1.EndUpdate();

671
The CellValue/CellCaption property gets the result of a computed/total field with text formatting. Is it possible to get that value without text formatting

axGrid1.BeginUpdate();
(axGrid1.Columns.Add("A") as EXGRIDLib.Column).Editor.EditType = EXGRIDLib.EditTypeEnum.SpinType;
(axGrid1.Columns.Add("B") as EXGRIDLib.Column).Editor.EditType = EXGRIDLib.EditTypeEnum.SpinType;
axGrid1.Columns.Add("A+B");
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h = var_Items.AddItem(10);
	var_Items.set_CellValue(h,1,20);
	var_Items.set_CellValueFormat(h,2,EXGRIDLib.ValueFormatEnum.exComputedField);
	var_Items.set_CellValue(h,2,"currency(dbl(%0)+dbl(%1))");
	System.Diagnostics.Debug.Print( "CellCaption returns " );
	System.Diagnostics.Debug.Print( var_Items.get_CellCaption(h,2) );
	System.Diagnostics.Debug.Print( "CellValue returns " );
	System.Diagnostics.Debug.Print( var_Items.get_CellValue(h,2).ToString() );
	System.Diagnostics.Debug.Print( "ComputeValue returns " );
	System.Diagnostics.Debug.Print( var_Items.get_ComputeValue("dbl(%0)+dbl(%1)",h,0,var_Items.get_CellValueFormat(h,2)).ToString() );
axGrid1.EndUpdate();

670
Can I get the result of a specified formula as your control does using the ComputedField property
axGrid1.BeginUpdate();
axGrid1.Columns.Add("A");
axGrid1.Columns.Add("B");
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h = var_Items.AddItem(10);
	var_Items.set_CellValue(h,1,20);
	System.Diagnostics.Debug.Print( "A+B is " );
	System.Diagnostics.Debug.Print( var_Items.get_ComputeValue("dbl(%0)+dbl(%1)",h,0,2).ToString() );
axGrid1.EndUpdate();

669
Is it possible to get the text without HTML formatting

axGrid1.BeginUpdate();
axGrid1.Columns.Add("");
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h = var_Items.AddItem("<b>bold</b>");
	System.Diagnostics.Debug.Print( var_Items.get_ComputeValue(var_Items.get_CellValue(h,0),h,0,1).ToString() );
axGrid1.EndUpdate();

668
Can I specify an item to be a separator

axGrid1.BeginUpdate();
axGrid1.TreeColumnIndex = -1;
axGrid1.SortOnClick = EXGRIDLib.SortOnClickEnum.exNoSort;
axGrid1.Columns.Add("Numbers");
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.AddItem(1);
	var_Items.AddItem(2);
	int h = var_Items.AddItem("separator");
	var_Items.set_SelectableItem(h,false);
	var_Items.set_ItemDivider(h,0);
	var_Items.set_ItemDividerLineAlignment(h,EXGRIDLib.DividerAlignmentEnum.DividerCenter);
	var_Items.set_ItemDividerLine(h,EXGRIDLib.DividerLineEnum.ThinLine);
	var_Items.set_CellHAlignment(h,0,EXGRIDLib.AlignmentEnum.CenterAlignment);
	var_Items.AddItem(3);
	var_Items.AddItem(4);
axGrid1.EndUpdate();

667
How can I count only non-zero values

axGrid1.BeginUpdate();
(axGrid1.Columns.Add("Numbers") as EXGRIDLib.Column).SortType = EXGRIDLib.SortTypeEnum.SortNumeric;
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.AddItem(1);
	var_Items.AddItem(2);
	var_Items.AddItem(0);
	var_Items.AddItem(0);
	var_Items.AddItem(0);
	var_Items.AddItem(0);
	var_Items.AddItem(3);
	var_Items.AddItem(4);
	int h = var_Items.AddItem("sum(all,dir,dbl(%0)?1:0)");
	var_Items.set_SortableItem(h,false);
	var_Items.set_CellValueFormat(h,0,EXGRIDLib.ValueFormatEnum.exTotalField);
	var_Items.set_CellHAlignment(h,0,EXGRIDLib.AlignmentEnum.RightAlignment);
	var_Items.set_FormatCell(h,0,"'COUNT non-zero: '+value");
axGrid1.EndUpdate();

666
How can I add a AVG ( average ) field

axGrid1.BeginUpdate();
(axGrid1.Columns.Add("Numbers") as EXGRIDLib.Column).SortType = EXGRIDLib.SortTypeEnum.SortNumeric;
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.AddItem(1);
	var_Items.AddItem(2);
	var_Items.AddItem(3);
	var_Items.AddItem(4);
	int h = var_Items.AddItem("avg(all,dir,dbl(%0))");
	var_Items.set_SortableItem(h,false);
	var_Items.set_CellValueFormat(h,0,EXGRIDLib.ValueFormatEnum.exTotalField);
	var_Items.set_CellHAlignment(h,0,EXGRIDLib.AlignmentEnum.RightAlignment);
	var_Items.set_FormatCell(h,0,"'AVG: '+value");
axGrid1.EndUpdate();

665
How can I add a COUNT field

axGrid1.BeginUpdate();
(axGrid1.Columns.Add("Numbers") as EXGRIDLib.Column).SortType = EXGRIDLib.SortTypeEnum.SortNumeric;
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.AddItem(1);
	var_Items.AddItem(2);
	var_Items.AddItem(3);
	var_Items.AddItem(4);
	int h = var_Items.AddItem("count(all,dir,0)");
	var_Items.set_SortableItem(h,false);
	var_Items.set_CellValueFormat(h,0,EXGRIDLib.ValueFormatEnum.exTotalField);
	var_Items.set_CellHAlignment(h,0,EXGRIDLib.AlignmentEnum.RightAlignment);
	var_Items.set_FormatCell(h,0,"'COUNT: '+value");
axGrid1.EndUpdate();

664
How can I add a MAX field

axGrid1.BeginUpdate();
(axGrid1.Columns.Add("Numbers") as EXGRIDLib.Column).SortType = EXGRIDLib.SortTypeEnum.SortNumeric;
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.AddItem(1);
	var_Items.AddItem(2);
	var_Items.AddItem(3);
	var_Items.AddItem(4);
	int h = var_Items.AddItem("max(all,dir,dbl(%0))");
	var_Items.set_SortableItem(h,false);
	var_Items.set_CellValueFormat(h,0,EXGRIDLib.ValueFormatEnum.exTotalField);
	var_Items.set_CellHAlignment(h,0,EXGRIDLib.AlignmentEnum.RightAlignment);
	var_Items.set_FormatCell(h,0,"'MAX: '+value");
axGrid1.EndUpdate();

663
How can I add a MIN or MAX field (for numbers)

axGrid1.BeginUpdate();
(axGrid1.Columns.Add("Numbers") as EXGRIDLib.Column).SortType = EXGRIDLib.SortTypeEnum.SortNumeric;
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.AddItem(11);
	var_Items.AddItem(21);
	var_Items.AddItem(3);
	var_Items.AddItem(4);
	int h = var_Items.AddItem("min(all,dir,dbl(%0))");
	var_Items.set_SortableItem(h,false);
	var_Items.set_CellValueFormat(h,0,EXGRIDLib.ValueFormatEnum.exTotalField);
	var_Items.set_CellHAlignment(h,0,EXGRIDLib.AlignmentEnum.RightAlignment);
	var_Items.set_FormatCell(h,0,"'MIN: '+value");
	h = var_Items.AddItem("max(all,dir,dbl(%0))");
	var_Items.set_SortableItem(h,false);
	var_Items.set_CellValueFormat(h,0,EXGRIDLib.ValueFormatEnum.exTotalField);
	var_Items.set_CellHAlignment(h,0,EXGRIDLib.AlignmentEnum.RightAlignment);
	var_Items.set_FormatCell(h,0,"'MAX: '+value");
axGrid1.EndUpdate();

662
How can I add a SUM field

axGrid1.BeginUpdate();
(axGrid1.Columns.Add("Numbers") as EXGRIDLib.Column).SortType = EXGRIDLib.SortTypeEnum.SortNumeric;
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.AddItem(1);
	var_Items.AddItem(2);
	var_Items.AddItem(3);
	var_Items.AddItem(4);
	int h = var_Items.AddItem("sum(all,dir,dbl(%0))");
	var_Items.set_SortableItem(h,false);
	var_Items.set_CellValueFormat(h,0,EXGRIDLib.ValueFormatEnum.exTotalField);
	var_Items.set_CellHAlignment(h,0,EXGRIDLib.AlignmentEnum.RightAlignment);
	var_Items.set_FormatCell(h,0,"'SUM: '+value");
axGrid1.EndUpdate();

661
How can I add total and subtotals fields

// Change event - Occurs when the user changes the cell's content.
private void axGrid1_Change(object sender, AxEXGRIDLib._IGridEvents_ChangeEvent e)
{
	axGrid1.Refresh();
}
//this.axGrid1.Change += new AxEXGRIDLib._IGridEvents_ChangeEventHandler(this.axGrid1_Change);

axGrid1.BeginUpdate();
axGrid1.LinesAtRoot = EXGRIDLib.LinesAtRootEnum.exGroupLinesAtRoot;
axGrid1.Columns.Add("Members");
EXGRIDLib.Column var_Column = (axGrid1.Columns.Add("Values") as EXGRIDLib.Column);
	var_Column.FormatColumn = "currency(value)";
	EXGRIDLib.Editor var_Editor = var_Column.Editor;
		var_Editor.EditType = EXGRIDLib.EditTypeEnum.SpinType;
		var_Editor.Numeric = EXGRIDLib.NumericEnum.exInteger;
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h = var_Items.AddItem("Group 1");
	var_Items.set_ItemBold(h,true);
	var_Items.set_CellEditorVisible(h,1,EXGRIDLib.EditorVisibleEnum.exEditorHidden);
	var_Items.set_CellValue(h,1,"sum(current,dir,dbl(%1))");
	var_Items.set_CellValueFormat(h,1,EXGRIDLib.ValueFormatEnum.exTotalField | EXGRIDLib.ValueFormatEnum.exHTML);
	var_Items.set_CellHAlignment(h,1,EXGRIDLib.AlignmentEnum.RightAlignment);
	var_Items.set_CellValue(var_Items.InsertItem(h,null,"Child 1"),1,10);
	var_Items.set_CellValue(var_Items.InsertItem(h,null,"Child 2"),1,20);
	var_Items.set_CellValue(var_Items.InsertItem(h,null,"Child 3"),1,30);
	var_Items.set_ExpandItem(h,true);
	h = var_Items.AddItem("Group 2");
	var_Items.set_ItemBold(h,true);
	var_Items.set_CellEditorVisible(h,1,EXGRIDLib.EditorVisibleEnum.exEditorHidden);
	var_Items.set_CellValue(h,1,"sum(current,dir,dbl(%1))");
	var_Items.set_CellValueFormat(h,1,EXGRIDLib.ValueFormatEnum.exTotalField | EXGRIDLib.ValueFormatEnum.exHTML);
	var_Items.set_CellHAlignment(h,1,EXGRIDLib.AlignmentEnum.RightAlignment);
	var_Items.set_CellValue(var_Items.InsertItem(h,null,"Child 1"),1,5);
	var_Items.set_CellValue(var_Items.InsertItem(h,null,"Child 2"),1,15);
	var_Items.set_CellValue(var_Items.InsertItem(h,null,"Child 3"),1,35);
	h = var_Items.AddItem("total");
	var_Items.set_CellValue(h,1,"sum(all,rec,dbl(%1))");
	var_Items.set_CellValueFormat(h,1,EXGRIDLib.ValueFormatEnum.exTotalField | EXGRIDLib.ValueFormatEnum.exHTML);
	var_Items.set_CellEditorVisible(h,1,EXGRIDLib.EditorVisibleEnum.exEditorHidden);
	var_Items.set_FormatCell(h,1,"'Total: <b>' + currency(value)");
	var_Items.set_CellHAlignment(h,1,EXGRIDLib.AlignmentEnum.RightAlignment);
	var_Items.set_ItemDivider(h,1);
	var_Items.set_ItemDividerLineAlignment(h,EXGRIDLib.DividerAlignmentEnum.DividerCenter);
	var_Items.set_ItemDividerLine(h,EXGRIDLib.DividerLineEnum.DoubleLine);
	var_Items.set_SortableItem(h,false);
axGrid1.EndUpdate();

660
Is is possible to have subtotal items, and a grand total item

// Change event - Occurs when the user changes the cell's content.
private void axGrid1_Change(object sender, AxEXGRIDLib._IGridEvents_ChangeEvent e)
{
	axGrid1.Refresh();
}
//this.axGrid1.Change += new AxEXGRIDLib._IGridEvents_ChangeEventHandler(this.axGrid1_Change);

axGrid1.BeginUpdate();
axGrid1.BackColor = Color.FromArgb(255,255,255);
axGrid1.LinesAtRoot = EXGRIDLib.LinesAtRootEnum.exGroupLinesAtRoot;
axGrid1.ShowFocusRect = false;
axGrid1.Columns.Add("Members");
EXGRIDLib.Column var_Column = (axGrid1.Columns.Add("Values") as EXGRIDLib.Column);
	var_Column.FormatColumn = "currency(value)";
	EXGRIDLib.Editor var_Editor = var_Column.Editor;
		var_Editor.EditType = EXGRIDLib.EditTypeEnum.SpinType;
		var_Editor.Numeric = EXGRIDLib.NumericEnum.exInteger;
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h = var_Items.AddItem("Group 1");
	var_Items.set_ItemBold(h,true);
	var_Items.set_SortableItem(h,false);
	var_Items.set_CellEditorVisible(h,1,EXGRIDLib.EditorVisibleEnum.exEditorHidden);
	var_Items.set_FormatCell(h,1," ");
	var_Items.set_CellValue(var_Items.InsertItem(h,null,"Child 1"),1,10);
	var_Items.set_CellValue(var_Items.InsertItem(h,null,"Child 2"),1,20);
	var_Items.set_CellValue(var_Items.InsertItem(h,null,"Child 3"),1,30);
	int hT = var_Items.InsertItem(h,null,"subtotal");
	var_Items.set_CellHAlignment(hT,1,EXGRIDLib.AlignmentEnum.RightAlignment);
	var_Items.set_CellEditorVisible(hT,1,EXGRIDLib.EditorVisibleEnum.exEditorHidden);
	var_Items.set_CellValue(hT,1,"sum(parent,dir,dbl(%1))");
	var_Items.set_CellValueFormat(hT,1,EXGRIDLib.ValueFormatEnum.exTotalField | EXGRIDLib.ValueFormatEnum.exHTML);
	var_Items.set_FormatCell(hT,1,"'subtotal: <b>' + currency(value)");
	var_Items.set_ItemDivider(hT,1);
	var_Items.set_ItemDividerLineAlignment(hT,EXGRIDLib.DividerAlignmentEnum.DividerCenter);
	var_Items.set_SortableItem(hT,false);
	var_Items.set_SelectableItem(hT,false);
	var_Items.set_ItemDividerLine(hT,EXGRIDLib.DividerLineEnum.DotLine);
	var_Items.set_ExpandItem(h,true);
	h = var_Items.AddItem("Group 2");
	var_Items.set_ItemBold(h,true);
	var_Items.set_SortableItem(h,false);
	var_Items.set_FormatCell(h,1," ");
	var_Items.set_CellEditorVisible(h,1,EXGRIDLib.EditorVisibleEnum.exEditorHidden);
	var_Items.set_CellValue(var_Items.InsertItem(h,null,"Child 1"),1,15);
	var_Items.set_CellValue(var_Items.InsertItem(h,null,"Child 2"),1,25);
	var_Items.set_CellValue(var_Items.InsertItem(h,null,"Child 3"),1,18);
	hT = var_Items.InsertItem(h,null,"subtotal");
	var_Items.set_CellHAlignment(hT,1,EXGRIDLib.AlignmentEnum.RightAlignment);
	var_Items.set_CellEditorVisible(hT,1,EXGRIDLib.EditorVisibleEnum.exEditorHidden);
	var_Items.set_CellValue(hT,1,"sum(parent,dir,dbl(%1))");
	var_Items.set_CellValueFormat(hT,1,EXGRIDLib.ValueFormatEnum.exTotalField | EXGRIDLib.ValueFormatEnum.exHTML);
	var_Items.set_FormatCell(hT,1,"'subtotal: <b>' + currency(value)");
	var_Items.set_ItemDivider(hT,1);
	var_Items.set_ItemDividerLineAlignment(hT,EXGRIDLib.DividerAlignmentEnum.DividerCenter);
	var_Items.set_ItemDividerLine(hT,EXGRIDLib.DividerLineEnum.DotLine);
	var_Items.set_SortableItem(hT,false);
	var_Items.set_SelectableItem(hT,false);
	var_Items.set_ExpandItem(h,true);
	h = var_Items.AddItem("total");
	var_Items.set_CellValue(h,1,"sum(all,rec,dbl(%1))");
	var_Items.set_CellValueFormat(h,1,EXGRIDLib.ValueFormatEnum.exTotalField | EXGRIDLib.ValueFormatEnum.exHTML);
	var_Items.set_CellEditorVisible(h,1,EXGRIDLib.EditorVisibleEnum.exEditorHidden);
	var_Items.set_FormatCell(h,1,"'Total: <b><font ;11>' + currency(value)");
	var_Items.set_CellHAlignment(h,1,EXGRIDLib.AlignmentEnum.CenterAlignment);
	var_Items.set_ItemDivider(h,1);
	var_Items.set_ItemDividerLineAlignment(h,EXGRIDLib.DividerAlignmentEnum.DividerCenter);
	var_Items.set_ItemDividerLine(h,EXGRIDLib.DividerLineEnum.DoubleLine);
	var_Items.set_SortableItem(h,false);
	var_Items.set_SelectableItem(h,false);
axGrid1.EndUpdate();

659
Is it possible to have a total field for each column

// Change event - Occurs when the user changes the cell's content.
private void axGrid1_Change(object sender, AxEXGRIDLib._IGridEvents_ChangeEvent e)
{
	axGrid1.Refresh();
}
//this.axGrid1.Change += new AxEXGRIDLib._IGridEvents_ChangeEventHandler(this.axGrid1_Change);

axGrid1.BeginUpdate();
EXGRIDLib.Column var_Column = (axGrid1.Columns.Add("C1") as EXGRIDLib.Column);
	EXGRIDLib.Editor var_Editor = var_Column.Editor;
		var_Editor.Numeric = EXGRIDLib.NumericEnum.exInteger;
		var_Editor.EditType = EXGRIDLib.EditTypeEnum.SpinType;
	var_Column.SortType = EXGRIDLib.SortTypeEnum.SortNumeric;
EXGRIDLib.Column var_Column1 = (axGrid1.Columns.Add("C2") as EXGRIDLib.Column);
	EXGRIDLib.Editor var_Editor1 = var_Column1.Editor;
		var_Editor1.Numeric = EXGRIDLib.NumericEnum.exInteger;
		var_Editor1.EditType = EXGRIDLib.EditTypeEnum.SpinType;
	var_Column1.SortType = EXGRIDLib.SortTypeEnum.SortNumeric;
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.set_LockedItemCount(EXGRIDLib.VAlignmentEnum.exBottom,1);
	int h = var_Items.get_LockedItem(EXGRIDLib.VAlignmentEnum.exBottom,0);
	var_Items.set_ItemBackColor(h,(uint)ColorTranslator.ToWin32(Color.FromArgb(240,240,240)));
	var_Items.set_ItemBold(h,true);
	var_Items.set_CellValue(h,0,"sum(all,dir,dbl(%0))");
	var_Items.set_CellValueFormat(h,0,EXGRIDLib.ValueFormatEnum.exTotalField);
	var_Items.set_CellValue(h,1,"sum(all,dir,dbl(%1))");
	var_Items.set_CellValueFormat(h,1,EXGRIDLib.ValueFormatEnum.exTotalField);
EXGRIDLib.Items var_Items1 = axGrid1.Items;
	var_Items1.set_CellValue(var_Items1.AddItem(10),1,12);
	var_Items1.set_CellValue(var_Items1.AddItem(25),1,5);
	var_Items1.set_CellValue(var_Items1.AddItem(31),1,17);
	var_Items1.set_CellValue(var_Items1.AddItem(48),1,22);
axGrid1.EndUpdate();

658
How can I add a total field for a DataSource being used

// Change event - Occurs when the user changes the cell's content.
private void axGrid1_Change(object sender, AxEXGRIDLib._IGridEvents_ChangeEvent e)
{
	axGrid1.Refresh();
}
//this.axGrid1.Change += new AxEXGRIDLib._IGridEvents_ChangeEventHandler(this.axGrid1_Change);

axGrid1.ColumnAutoResize = false;
axGrid1.ContinueColumnScroll = false;
// Add 'Microsoft ActiveX Data Objects 6.1 Library(msado15.dll)' reference to your project.
ADODB.Recordset rs = new ADODB.Recordset();
	rs.Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\Program Files\\Exontrol\\ExGrid\\Sample\\Access\\misc.accdb",ADODB.CursorTypeEnum.adOpenStatic,ADODB.LockTypeEnum.adLockOptimistic,0);
axGrid1.DataSource = (rs as ADODB.Recordset);
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.set_LockedItemCount(EXGRIDLib.VAlignmentEnum.exTop,1);
	int h = var_Items.get_LockedItem(EXGRIDLib.VAlignmentEnum.exTop,0);
	var_Items.set_ItemDivider(h,0);
	var_Items.set_CellValueFormat(h,0,EXGRIDLib.ValueFormatEnum.exTotalField | EXGRIDLib.ValueFormatEnum.exHTML);
	var_Items.set_CellValue(h,0,"sum(all,dir,%1)");

657
How can I add a total field

// Change event - Occurs when the user changes the cell's content.
private void axGrid1_Change(object sender, AxEXGRIDLib._IGridEvents_ChangeEvent e)
{
	axGrid1.Refresh();
}
//this.axGrid1.Change += new AxEXGRIDLib._IGridEvents_ChangeEventHandler(this.axGrid1_Change);

axGrid1.BeginUpdate();
EXGRIDLib.Column var_Column = (axGrid1.Columns.Add("Numbers") as EXGRIDLib.Column);
	EXGRIDLib.Editor var_Editor = var_Column.Editor;
		var_Editor.Numeric = EXGRIDLib.NumericEnum.exInteger;
		var_Editor.EditType = EXGRIDLib.EditTypeEnum.SpinType;
	var_Column.SortType = EXGRIDLib.SortTypeEnum.SortNumeric;
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.set_LockedItemCount(EXGRIDLib.VAlignmentEnum.exTop,1);
	int h = var_Items.get_LockedItem(EXGRIDLib.VAlignmentEnum.exTop,0);
	var_Items.set_ItemBackColor(h,(uint)ColorTranslator.ToWin32(Color.FromArgb(240,240,240)));
	var_Items.set_CellValue(h,0,"sum(all,dir,dbl(%0))");
	var_Items.set_CellValueFormat(h,0,EXGRIDLib.ValueFormatEnum.exTotalField);
	var_Items.set_CellHAlignment(h,0,EXGRIDLib.AlignmentEnum.RightAlignment);
	var_Items.set_FormatCell(h,0,"'Total: '+value");
EXGRIDLib.Items var_Items1 = axGrid1.Items;
	var_Items1.AddItem(10);
	var_Items1.AddItem(25);
	var_Items1.AddItem(31);
	var_Items1.AddItem(48);
axGrid1.EndUpdate();

656
How can I add a total field

// Change event - Occurs when the user changes the cell's content.
private void axGrid1_Change(object sender, AxEXGRIDLib._IGridEvents_ChangeEvent e)
{
	axGrid1.Refresh();
}
//this.axGrid1.Change += new AxEXGRIDLib._IGridEvents_ChangeEventHandler(this.axGrid1_Change);

axGrid1.BeginUpdate();
EXGRIDLib.Editor var_Editor = (axGrid1.Columns.Add("Items") as EXGRIDLib.Column).Editor;
	var_Editor.EditType = EXGRIDLib.EditTypeEnum.SpinType;
	var_Editor.Numeric = EXGRIDLib.NumericEnum.exInteger;
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h = var_Items.AddItem("Group 1");
	var_Items.set_CellEditorVisible(h,0,EXGRIDLib.EditorVisibleEnum.exEditorHidden);
	var_Items.InsertItem(h,null,10);
	var_Items.InsertItem(h,null,20);
	var_Items.InsertItem(h,null,30);
	int hT = var_Items.InsertItem(h,null,"sum(parent,dir,dbl(%0))");
	var_Items.set_CellEditorVisible(hT,0,EXGRIDLib.EditorVisibleEnum.exEditorHidden);
	var_Items.set_CellValueFormat(hT,0,EXGRIDLib.ValueFormatEnum.exTotalField | EXGRIDLib.ValueFormatEnum.exHTML);
	var_Items.set_ItemDivider(hT,0);
	var_Items.set_ItemDividerLineAlignment(hT,EXGRIDLib.DividerAlignmentEnum.DividerTop);
	var_Items.set_SelectableItem(hT,false);
	var_Items.set_SortableItem(hT,false);
	var_Items.set_ExpandItem(h,true);
axGrid1.EndUpdate();

655
Is it possible to specify the cell's value but still want to display some formatted text instead the value

axGrid1.BeginUpdate();
axGrid1.Columns.Add("Value");
axGrid1.Columns.Add("FormatCell");
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h = var_Items.AddItem(1);
	var_Items.set_CellValue(h,1,12);
	var_Items.set_FormatCell(h,1,"currency(value)");
	h = var_Items.AddItem(Convert.ToDateTime("1/1/2001",System.Globalization.CultureInfo.GetCultureInfo("en-US")));
	var_Items.set_CellValue(h,1,Convert.ToDateTime("1/1/2001",System.Globalization.CultureInfo.GetCultureInfo("en-US")));
	var_Items.set_CellValueFormat(h,1,EXGRIDLib.ValueFormatEnum.exHTML);
	var_Items.set_FormatCell(h,1,"longdate(value) replace '2001' with '<b>2001</b>'");
axGrid1.EndUpdate();

654
How can I simulate displaying groups

axGrid1.HasLines = EXGRIDLib.HierarchyLineEnum.exNoLine;
axGrid1.ScrollBySingleLine = true;
EXGRIDLib.Columns var_Columns = axGrid1.Columns;
	var_Columns.Add("Name");
	var_Columns.Add("A");
	var_Columns.Add("B");
	var_Columns.Add("C");
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h = var_Items.AddItem("Group 1");
	var_Items.set_CellHAlignment(h,0,EXGRIDLib.AlignmentEnum.CenterAlignment);
	var_Items.set_ItemDivider(h,0);
	var_Items.set_ItemDividerLineAlignment(h,EXGRIDLib.DividerAlignmentEnum.DividerBoth);
	var_Items.set_ItemHeight(h,24);
	var_Items.set_SortableItem(h,false);
	int h1 = var_Items.InsertItem(h,null,"Child 1");
	var_Items.set_CellValue(h1,1,1);
	var_Items.set_CellValue(h1,2,2);
	var_Items.set_CellValue(h1,3,3);
	h1 = var_Items.InsertItem(h,null,"Child 2");
	var_Items.set_CellValue(h1,1,4);
	var_Items.set_CellValue(h1,2,5);
	var_Items.set_CellValue(h1,3,6);
	var_Items.set_ExpandItem(h,true);
	h = var_Items.AddItem("Group 2");
	var_Items.set_CellHAlignment(h,0,EXGRIDLib.AlignmentEnum.CenterAlignment);
	var_Items.set_ItemDivider(h,0);
	var_Items.set_ItemDividerLineAlignment(h,EXGRIDLib.DividerAlignmentEnum.DividerBoth);
	var_Items.set_ItemHeight(h,24);
	var_Items.set_SortableItem(h,false);
	h1 = var_Items.InsertItem(h,null,"Child 1");
	var_Items.set_CellValue(h1,1,1);
	var_Items.set_CellValue(h1,2,2);
	var_Items.set_CellValue(h1,3,3);
	h1 = var_Items.InsertItem(h,null,"Child 2");
	var_Items.set_CellValue(h1,1,4);
	var_Items.set_CellValue(h1,2,5);
	var_Items.set_CellValue(h1,3,6);
	var_Items.set_ExpandItem(h,true);

653
Is it possible to specify the cell's value but still want to display some formatted text instead the value

axGrid1.BeginUpdate();
axGrid1.MarkSearchColumn = false;
EXGRIDLib.Columns var_Columns = axGrid1.Columns;
	var_Columns.Add("Name");
	EXGRIDLib.Column var_Column = (var_Columns.Add("Values") as EXGRIDLib.Column);
		var_Column.SortType = EXGRIDLib.SortTypeEnum.SortNumeric;
		var_Column.AllowSizing = false;
		var_Column.Width = 64;
		var_Column.FormatColumn = "((0:=dbl(value)) < 10? '<fgcolor=808080><font ;7>' :'<b>') + currency(=:0)";
		var_Column.set_Def(EXGRIDLib.DefColumnEnum.exCellValueFormat,1);
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h = var_Items.AddItem("Root");
	var_Items.set_FormatCell(h,1,"'<none>'");
	var_Items.set_CellValue(var_Items.InsertItem(h,null,"Child 1"),1,10);
	var_Items.set_CellValue(var_Items.InsertItem(h,null,"Child 2"),1,15);
	var_Items.set_CellValue(var_Items.InsertItem(h,null,"Child 3"),1,25);
	var_Items.set_ExpandItem(h,true);
axGrid1.EndUpdate();

652
I am using the FormatColumn to display the current currency, but would like hide some values. Is it possible

axGrid1.BeginUpdate();
axGrid1.MarkSearchColumn = false;
EXGRIDLib.Columns var_Columns = axGrid1.Columns;
	var_Columns.Add("Name");
	EXGRIDLib.Column var_Column = (var_Columns.Add("Values") as EXGRIDLib.Column);
		var_Column.SortType = EXGRIDLib.SortTypeEnum.SortNumeric;
		var_Column.AllowSizing = false;
		var_Column.Width = 64;
		var_Column.FormatColumn = "((0:=dbl(value)) < 10? '<fgcolor=808080><font ;7>' :'<b>') + currency(=:0)";
		var_Column.set_Def(EXGRIDLib.DefColumnEnum.exCellValueFormat,1);
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h = var_Items.AddItem("Root");
	var_Items.set_FormatCell(h,1," ");
	var_Items.set_CellValue(var_Items.InsertItem(h,null,"Child 1"),1,10);
	var_Items.set_CellValue(var_Items.InsertItem(h,null,"Child 2"),1,15);
	var_Items.set_CellValue(var_Items.InsertItem(h,null,"Child 3"),1,25);
	var_Items.set_ExpandItem(h,true);
axGrid1.EndUpdate();

651
How can I specify an item to be always the first item

axGrid1.BeginUpdate();
axGrid1.TreeColumnIndex = -1;
(axGrid1.Columns.Add("Numbers") as EXGRIDLib.Column).SortType = EXGRIDLib.SortTypeEnum.SortNumeric;
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.AddItem(1);
	var_Items.AddItem(2);
	var_Items.AddItem(3);
	var_Items.AddItem(4);
	int h = var_Items.AddItem("first");
	var_Items.set_ItemPosition(h,0);
	var_Items.set_CellHAlignment(h,0,EXGRIDLib.AlignmentEnum.RightAlignment);
	var_Items.set_SortableItem(h,false);
	var_Items.SortChildren(0,0,false);
axGrid1.EndUpdate();

650
How can I specify an item to be always the last item

axGrid1.BeginUpdate();
axGrid1.TreeColumnIndex = -1;
(axGrid1.Columns.Add("Numbers") as EXGRIDLib.Column).SortType = EXGRIDLib.SortTypeEnum.SortNumeric;
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.AddItem(1);
	var_Items.AddItem(2);
	var_Items.AddItem(3);
	var_Items.AddItem(4);
	int h = var_Items.AddItem("last");
	var_Items.set_CellHAlignment(h,0,EXGRIDLib.AlignmentEnum.RightAlignment);
	var_Items.set_SortableItem(h,false);
	var_Items.SortChildren(0,0,true);
axGrid1.EndUpdate();

649
Can I allow sorting only the child items

axGrid1.BeginUpdate();
axGrid1.Columns.Add("Childs");
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h = var_Items.AddItem("Root 1");
	var_Items.set_SortableItem(h,false);
	var_Items.InsertItem(h,null,"Child 1");
	var_Items.InsertItem(h,null,"Child 2");
	var_Items.set_ExpandItem(h,true);
	h = var_Items.AddItem("Root 2");
	var_Items.set_SortableItem(h,false);
	var_Items.InsertItem(h,null,"Child 1");
	var_Items.InsertItem(h,null,"Child 2");
	var_Items.set_ExpandItem(h,true);
axGrid1.EndUpdate();

648
Can I specify a terminal item so it will mark the end of childs

axGrid1.BeginUpdate();
axGrid1.ScrollBySingleLine = true;
axGrid1.Columns.Add("P1");
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h = var_Items.AddItem("Root 1");
	var_Items.InsertItem(h,null,"Child 1");
	var_Items.InsertItem(h,null,"Child 2");
	var_Items.set_ExpandItem(h,true);
	h = var_Items.InsertItem(h,"","");
	var_Items.set_ItemDivider(h,0);
	var_Items.set_ItemDividerLineAlignment(h,EXGRIDLib.DividerAlignmentEnum.DividerCenter);
	var_Items.set_ItemHeight(h,2);
	var_Items.set_SelectableItem(h,false);
	var_Items.set_SortableItem(h,false);
	h = var_Items.AddItem("Root 2");
	var_Items.InsertItem(h,null,"Child 1");
	var_Items.InsertItem(h,null,"Child 2");
	var_Items.set_ExpandItem(h,true);
	h = var_Items.InsertItem(h,"","");
	var_Items.set_ItemDivider(h,0);
	var_Items.set_ItemDividerLineAlignment(h,EXGRIDLib.DividerAlignmentEnum.DividerCenter);
	var_Items.set_ItemHeight(h,2);
	var_Items.set_SelectableItem(h,false);
	var_Items.set_SortableItem(h,false);
axGrid1.EndUpdate();

647
Is it possible to specify an item being unsortable so its position won't be changed after sorting

axGrid1.BeginUpdate();
axGrid1.TreeColumnIndex = -1;
(axGrid1.Columns.Add("Numbers") as EXGRIDLib.Column).SortType = EXGRIDLib.SortTypeEnum.SortNumeric;
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.AddItem(1);
	var_Items.AddItem(2);
	var_Items.AddItem(3);
	var_Items.AddItem(4);
	int h = var_Items.AddItem("top 3");
	var_Items.set_ItemPosition(h,3);
	var_Items.set_CellHAlignment(h,0,EXGRIDLib.AlignmentEnum.RightAlignment);
	var_Items.set_SortableItem(h,false);
	var_Items.SortChildren(0,0,false);
axGrid1.EndUpdate();

646
Is it possible to move an item from a parent to another

axGrid1.BeginUpdate();
axGrid1.LinesAtRoot = EXGRIDLib.LinesAtRootEnum.exLinesAtRoot;
axGrid1.Columns.Add("Items");
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.AddItem("A");
	var_Items.AddItem("B");
	var_Items.InsertItem(var_Items.AddItem("C"),"","D");
	var_Items.SetParent(var_Items.get_FindItem("D",0,null),var_Items.get_FindItem("A",0,null));
axGrid1.EndUpdate();

645
How can I change the identation for an item

axGrid1.BeginUpdate();
axGrid1.LinesAtRoot = EXGRIDLib.LinesAtRootEnum.exLinesAtRoot;
axGrid1.Columns.Add("Items");
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.AddItem("A");
	var_Items.AddItem("B");
	var_Items.InsertItem(var_Items.AddItem("C"),"","D");
	var_Items.SetParent(var_Items.get_FindItem("D",0,null),0);
axGrid1.EndUpdate();

644
How can I arrange the control's header on multiple levels

axGrid1.BeginUpdate();
axGrid1.DefaultItemHeight = 48;
EXGRIDLib.Columns var_Columns = axGrid1.Columns;
	(var_Columns.Add("Title") as EXGRIDLib.Column).Visible = false;
	(var_Columns.Add("FirstName") as EXGRIDLib.Column).Visible = false;
	(var_Columns.Add("LastName") as EXGRIDLib.Column).Visible = false;
	(var_Columns.Add("Photo") as EXGRIDLib.Column).Visible = false;
	EXGRIDLib.Column var_Column = (var_Columns.Add("Address") as EXGRIDLib.Column);
		var_Column.Visible = false;
		var_Column.set_Def(EXGRIDLib.DefColumnEnum.exCellSingleLine,false);
	EXGRIDLib.Column var_Column1 = (var_Columns.Add("Personal Info") as EXGRIDLib.Column);
		var_Column1.FormatLevel = "3:48,(0/1/2),4:96";
		var_Column1.set_Def(EXGRIDLib.DefColumnEnum.exCellFormatLevel,"3:48,(0/1/2),4:96");
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h = var_Items.AddItem("Sales Representative");
	var_Items.set_CellValue(h,1,"Nancy");
	var_Items.set_CellValue(h,2,"Davolio");
	var_Items.set_CellPicture(h,3,(axGrid1.ExecuteTemplate("loadpicture(`c:\\exontrol\\images\\zipdisk.gif`)") as stdole.IPictureDisp));
	var_Items.set_CellValue(h,4,"507-20th Ave. E.Apt.  2A");
axGrid1.EndUpdate();

643
How can I filter programatically using more columns

axGrid1.BeginUpdate();
EXGRIDLib.Columns var_Columns = axGrid1.Columns;
	var_Columns.Add("Car");
	var_Columns.Add("Equipment");
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.set_CellValue(var_Items.AddItem("Mazda"),1,"Air Bag");
	var_Items.set_CellValue(var_Items.AddItem("Toyota"),1,"Air Bag,Air condition");
	var_Items.set_CellValue(var_Items.AddItem("Ford"),1,"Air condition");
	var_Items.set_CellValue(var_Items.AddItem("Nissan"),1,"Air Bag,ABS,ESP");
	var_Items.set_CellValue(var_Items.AddItem("Mazda"),1,"Air Bag, ABS,ESP");
	var_Items.set_CellValue(var_Items.AddItem("Mazda"),1,"ABS,ESP");
EXGRIDLib.Column var_Column = axGrid1.Columns["Car"];
	var_Column.FilterType = EXGRIDLib.FilterTypeEnum.exFilter;
	var_Column.Filter = "Mazda";
EXGRIDLib.Column var_Column1 = axGrid1.Columns["Equipment"];
	var_Column1.FilterType = EXGRIDLib.FilterTypeEnum.exPattern;
	var_Column1.Filter = "*ABS*|*ESP*";
axGrid1.ApplyFilter();
axGrid1.EndUpdate();

642
How can I show the ticks for a single slider field

axGrid1.BeginUpdate();
(axGrid1.Columns.Add("Slider") as EXGRIDLib.Column).Editor.EditType = EXGRIDLib.EditTypeEnum.SliderType;
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.AddItem(10);
	EXGRIDLib.Editor var_Editor = var_Items.get_CellEditor(var_Items.AddItem(20),0);
		var_Editor.EditType = EXGRIDLib.EditTypeEnum.SliderType;
		var_Editor.set_Option(EXGRIDLib.EditorOptionEnum.exSliderTickFrequency,10);
	var_Items.AddItem(30);
axGrid1.EndUpdate();

641
Is it possible to show ticks for slider fields

EXGRIDLib.Editor var_Editor = (axGrid1.Columns.Add("Slider") as EXGRIDLib.Column).Editor;
	var_Editor.EditType = EXGRIDLib.EditTypeEnum.SliderType;
	var_Editor.set_Option(EXGRIDLib.EditorOptionEnum.exSliderTickFrequency,10);
axGrid1.Items.AddItem(10);

640
Is it possible to colour a particular column, I mean the cell's foreground color

axGrid1.BeginUpdate();
EXGRIDLib.ConditionalFormat var_ConditionalFormat = axGrid1.ConditionalFormats.Add("1",null);
	var_ConditionalFormat.ForeColor = (uint)ColorTranslator.ToWin32(Color.FromArgb(255,0,0));
	var_ConditionalFormat.ApplyTo = (EXGRIDLib.FormatApplyToEnum)0x1;
axGrid1.MarkSearchColumn = false;
EXGRIDLib.Columns var_Columns = axGrid1.Columns;
	var_Columns.Add("Column 1");
	var_Columns.Add("Column 2");
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.set_CellValue(var_Items.AddItem(0),1,1);
	var_Items.set_CellValue(var_Items.AddItem(2),1,3);
	var_Items.set_CellValue(var_Items.AddItem(4),1,5);
axGrid1.EndUpdate();

639
Is it possible to colour a particular column for specified values

axGrid1.BeginUpdate();
EXGRIDLib.ConditionalFormat var_ConditionalFormat = axGrid1.ConditionalFormats.Add("int(%1) in (3,4,5)",null);
	var_ConditionalFormat.BackColor = (uint)ColorTranslator.ToWin32(Color.FromArgb(255,0,0));
	var_ConditionalFormat.ApplyTo = (EXGRIDLib.FormatApplyToEnum)0x1;
axGrid1.MarkSearchColumn = false;
EXGRIDLib.Columns var_Columns = axGrid1.Columns;
	var_Columns.Add("Column 1");
	var_Columns.Add("Column 2");
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.set_CellValue(var_Items.AddItem(0),1,1);
	var_Items.set_CellValue(var_Items.AddItem(2),1,3);
	var_Items.set_CellValue(var_Items.AddItem(4),1,5);
axGrid1.EndUpdate();

638
Is it possible to colour a particular column

axGrid1.BeginUpdate();
axGrid1.MarkSearchColumn = false;
EXGRIDLib.Columns var_Columns = axGrid1.Columns;
	var_Columns.Add("Column 1");
	(var_Columns.Add("Column 2") as EXGRIDLib.Column).set_Def(EXGRIDLib.DefColumnEnum.exCellBackColor,255);
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.set_CellValue(var_Items.AddItem(0),1,1);
	var_Items.set_CellValue(var_Items.AddItem(2),1,3);
	var_Items.set_CellValue(var_Items.AddItem(4),1,5);
axGrid1.EndUpdate();

637
How do i get all the children items that are under a certain parent Item handle
axGrid1.BeginUpdate();
axGrid1.LinesAtRoot = EXGRIDLib.LinesAtRootEnum.exLinesAtRoot;
axGrid1.Columns.Add("P");
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h = var_Items.AddItem("Root");
	var_Items.InsertItem(h,null,"Child 1");
	var_Items.InsertItem(h,null,"Child 2");
	var_Items.set_ExpandItem(h,true);
EXGRIDLib.Items var_Items1 = axGrid1.Items;
	int hChild = var_Items1.get_ItemChild(var_Items1.FirstVisibleItem);
	System.Diagnostics.Debug.Print( var_Items1.get_CellValue(hChild,0).ToString() );
	System.Diagnostics.Debug.Print( var_Items1.get_CellValue(var_Items1.get_NextSiblingItem(hChild),0).ToString() );
axGrid1.EndUpdate();

636
Is is possible to use HTML tags to display in the filter caption

axGrid1.BeginUpdate();
axGrid1.FilterBarPromptVisible = EXGRIDLib.FilterBarVisibleEnum.exFilterBarPromptVisible;
axGrid1.FilterBarCaption = "This is a bit of text being displayed in the filter bar.";
axGrid1.Columns.Add("");
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.AddItem("Item 1");
	var_Items.AddItem("Item 2");
	var_Items.AddItem("Item 3");
axGrid1.EndUpdate();

635
How can I find the number of items after filtering
axGrid1.BeginUpdate();
axGrid1.Columns.Add("");
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h = var_Items.AddItem("");
	var_Items.set_CellValue(h,0,var_Items.VisibleItemCount);
axGrid1.EndUpdate();

634
How can I change the filter caption

axGrid1.BeginUpdate();
axGrid1.ColumnAutoResize = true;
axGrid1.ContinueColumnScroll = false;
axGrid1.FocusColumnIndex = 1;
axGrid1.MarkSearchColumn = false;
axGrid1.SearchColumnIndex = 1;
axGrid1.FilterBarPromptVisible = EXGRIDLib.FilterBarVisibleEnum.exFilterBarPromptVisible;
axGrid1.FilterBarPromptType = EXGRIDLib.FilterPromptEnum.exFilterPromptWords | EXGRIDLib.FilterPromptEnum.exFilterPromptContainsAll;
axGrid1.FilterBarPromptPattern = "london robert";
axGrid1.FilterBarCaption = "<r>Found: ... ";
EXGRIDLib.Columns var_Columns = axGrid1.Columns;
	(var_Columns.Add("Name") as EXGRIDLib.Column).Width = 96;
	(var_Columns.Add("Title") as EXGRIDLib.Column).Width = 96;
	var_Columns.Add("City");
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h0 = var_Items.AddItem("Nancy Davolio");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"Seattle");
	h0 = var_Items.AddItem("Andrew Fuller");
	var_Items.set_CellValue(h0,1,"Vice President, Sales");
	var_Items.set_CellValue(h0,2,"Tacoma");
	var_Items.set_SelectItem(h0,true);
	h0 = var_Items.AddItem("Janet Leverling");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"Kirkland");
	h0 = var_Items.AddItem("Margaret Peacock");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"Redmond");
	h0 = var_Items.AddItem("Steven Buchanan");
	var_Items.set_CellValue(h0,1,"Sales Manager");
	var_Items.set_CellValue(h0,2,"London");
	h0 = var_Items.AddItem("Michael Suyama");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"London");
	h0 = var_Items.AddItem("Robert King");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"London");
	h0 = var_Items.AddItem("Laura Callahan");
	var_Items.set_CellValue(h0,1,"Inside Sales Coordinator");
	var_Items.set_CellValue(h0,2,"Seattle");
	h0 = var_Items.AddItem("Anne Dodsworth");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"London");
axGrid1.EndUpdate();

633
While using the filter prompt is it is possible to use wild characters

axGrid1.BeginUpdate();
axGrid1.ColumnAutoResize = true;
axGrid1.ContinueColumnScroll = false;
axGrid1.FocusColumnIndex = 1;
axGrid1.MarkSearchColumn = false;
axGrid1.SearchColumnIndex = 1;
axGrid1.FilterBarPromptVisible = EXGRIDLib.FilterBarVisibleEnum.exFilterBarPromptVisible;
axGrid1.FilterBarPromptType = EXGRIDLib.FilterPromptEnum.exFilterPromptPattern;
axGrid1.FilterBarPromptPattern = "lon* seat*";
EXGRIDLib.Columns var_Columns = axGrid1.Columns;
	(var_Columns.Add("Name") as EXGRIDLib.Column).Width = 96;
	(var_Columns.Add("Title") as EXGRIDLib.Column).Width = 96;
	var_Columns.Add("City");
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h0 = var_Items.AddItem("Nancy Davolio");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"Seattle");
	h0 = var_Items.AddItem("Andrew Fuller");
	var_Items.set_CellValue(h0,1,"Vice President, Sales");
	var_Items.set_CellValue(h0,2,"Tacoma");
	var_Items.set_SelectItem(h0,true);
	h0 = var_Items.AddItem("Janet Leverling");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"Kirkland");
	h0 = var_Items.AddItem("Margaret Peacock");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"Redmond");
	h0 = var_Items.AddItem("Steven Buchanan");
	var_Items.set_CellValue(h0,1,"Sales Manager");
	var_Items.set_CellValue(h0,2,"London");
	h0 = var_Items.AddItem("Michael Suyama");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"London");
	h0 = var_Items.AddItem("Robert King");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"London");
	h0 = var_Items.AddItem("Laura Callahan");
	var_Items.set_CellValue(h0,1,"Inside Sales Coordinator");
	var_Items.set_CellValue(h0,2,"Seattle");
	h0 = var_Items.AddItem("Anne Dodsworth");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"London");
axGrid1.EndUpdate();

632
How can I list all items that contains any of specified words, not necessary at the beggining

axGrid1.BeginUpdate();
axGrid1.ColumnAutoResize = true;
axGrid1.ContinueColumnScroll = false;
axGrid1.FocusColumnIndex = 1;
axGrid1.MarkSearchColumn = false;
axGrid1.SearchColumnIndex = 1;
axGrid1.FilterBarPromptVisible = EXGRIDLib.FilterBarVisibleEnum.exFilterBarPromptVisible;
axGrid1.FilterBarPromptType = EXGRIDLib.FilterPromptEnum.exFilterPromptStartWords | EXGRIDLib.FilterPromptEnum.exFilterPromptContainsAny;
axGrid1.FilterBarPromptPattern = "london davolio";
EXGRIDLib.Columns var_Columns = axGrid1.Columns;
	(var_Columns.Add("Name") as EXGRIDLib.Column).Width = 96;
	(var_Columns.Add("Title") as EXGRIDLib.Column).Width = 96;
	var_Columns.Add("City");
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h0 = var_Items.AddItem("Nancy Davolio");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"Seattle");
	h0 = var_Items.AddItem("Andrew Fuller");
	var_Items.set_CellValue(h0,1,"Vice President, Sales");
	var_Items.set_CellValue(h0,2,"Tacoma");
	var_Items.set_SelectItem(h0,true);
	h0 = var_Items.AddItem("Janet Leverling");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"Kirkland");
	h0 = var_Items.AddItem("Margaret Peacock");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"Redmond");
	h0 = var_Items.AddItem("Steven Buchanan");
	var_Items.set_CellValue(h0,1,"Sales Manager");
	var_Items.set_CellValue(h0,2,"London");
	h0 = var_Items.AddItem("Michael Suyama");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"London");
	h0 = var_Items.AddItem("Robert King");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"London");
	h0 = var_Items.AddItem("Laura Callahan");
	var_Items.set_CellValue(h0,1,"Inside Sales Coordinator");
	var_Items.set_CellValue(h0,2,"Seattle");
	h0 = var_Items.AddItem("Anne Dodsworth");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"London");
axGrid1.EndUpdate();

631
How can I list all items that contains any of specified words, not strings

axGrid1.BeginUpdate();
axGrid1.ColumnAutoResize = true;
axGrid1.ContinueColumnScroll = false;
axGrid1.FocusColumnIndex = 1;
axGrid1.MarkSearchColumn = false;
axGrid1.SearchColumnIndex = 1;
axGrid1.FilterBarPromptVisible = EXGRIDLib.FilterBarVisibleEnum.exFilterBarPromptVisible;
axGrid1.FilterBarPromptType = EXGRIDLib.FilterPromptEnum.exFilterPromptWords | EXGRIDLib.FilterPromptEnum.exFilterPromptContainsAny;
axGrid1.FilterBarPromptPattern = "london nancy";
EXGRIDLib.Columns var_Columns = axGrid1.Columns;
	(var_Columns.Add("Name") as EXGRIDLib.Column).Width = 96;
	(var_Columns.Add("Title") as EXGRIDLib.Column).Width = 96;
	var_Columns.Add("City");
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h0 = var_Items.AddItem("Nancy Davolio");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"Seattle");
	h0 = var_Items.AddItem("Andrew Fuller");
	var_Items.set_CellValue(h0,1,"Vice President, Sales");
	var_Items.set_CellValue(h0,2,"Tacoma");
	var_Items.set_SelectItem(h0,true);
	h0 = var_Items.AddItem("Janet Leverling");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"Kirkland");
	h0 = var_Items.AddItem("Margaret Peacock");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"Redmond");
	h0 = var_Items.AddItem("Steven Buchanan");
	var_Items.set_CellValue(h0,1,"Sales Manager");
	var_Items.set_CellValue(h0,2,"London");
	h0 = var_Items.AddItem("Michael Suyama");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"London");
	h0 = var_Items.AddItem("Robert King");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"London");
	h0 = var_Items.AddItem("Laura Callahan");
	var_Items.set_CellValue(h0,1,"Inside Sales Coordinator");
	var_Items.set_CellValue(h0,2,"Seattle");
	h0 = var_Items.AddItem("Anne Dodsworth");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"London");
axGrid1.EndUpdate();

630
How can I list all items that contains all specified words, not strings

axGrid1.BeginUpdate();
axGrid1.ColumnAutoResize = true;
axGrid1.ContinueColumnScroll = false;
axGrid1.FocusColumnIndex = 1;
axGrid1.MarkSearchColumn = false;
axGrid1.SearchColumnIndex = 1;
axGrid1.FilterBarPromptVisible = EXGRIDLib.FilterBarVisibleEnum.exFilterBarPromptVisible;
axGrid1.FilterBarPromptType = EXGRIDLib.FilterPromptEnum.exFilterPromptWords | EXGRIDLib.FilterPromptEnum.exFilterPromptContainsAll;
axGrid1.FilterBarPromptPattern = "london robert";
EXGRIDLib.Columns var_Columns = axGrid1.Columns;
	(var_Columns.Add("Name") as EXGRIDLib.Column).Width = 96;
	(var_Columns.Add("Title") as EXGRIDLib.Column).Width = 96;
	var_Columns.Add("City");
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h0 = var_Items.AddItem("Nancy Davolio");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"Seattle");
	h0 = var_Items.AddItem("Andrew Fuller");
	var_Items.set_CellValue(h0,1,"Vice President, Sales");
	var_Items.set_CellValue(h0,2,"Tacoma");
	var_Items.set_SelectItem(h0,true);
	h0 = var_Items.AddItem("Janet Leverling");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"Kirkland");
	h0 = var_Items.AddItem("Margaret Peacock");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"Redmond");
	h0 = var_Items.AddItem("Steven Buchanan");
	var_Items.set_CellValue(h0,1,"Sales Manager");
	var_Items.set_CellValue(h0,2,"London");
	h0 = var_Items.AddItem("Michael Suyama");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"London");
	h0 = var_Items.AddItem("Robert King");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"London");
	h0 = var_Items.AddItem("Laura Callahan");
	var_Items.set_CellValue(h0,1,"Inside Sales Coordinator");
	var_Items.set_CellValue(h0,2,"Seattle");
	h0 = var_Items.AddItem("Anne Dodsworth");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"London");
axGrid1.EndUpdate();

629
I've noticed that the filtering by prompt is not case sensitive, is is possible to make it case sensitive

axGrid1.BeginUpdate();
axGrid1.ColumnAutoResize = true;
axGrid1.ContinueColumnScroll = false;
axGrid1.FocusColumnIndex = 1;
axGrid1.MarkSearchColumn = false;
axGrid1.SearchColumnIndex = 1;
axGrid1.FilterBarPromptVisible = EXGRIDLib.FilterBarVisibleEnum.exFilterBarPromptVisible;
axGrid1.FilterBarPromptType = EXGRIDLib.FilterPromptEnum.exFilterPromptCaseSensitive | EXGRIDLib.FilterPromptEnum.exFilterPromptContainsAny;
axGrid1.FilterBarPromptPattern = "Anne";
EXGRIDLib.Columns var_Columns = axGrid1.Columns;
	(var_Columns.Add("Name") as EXGRIDLib.Column).Width = 96;
	(var_Columns.Add("Title") as EXGRIDLib.Column).Width = 96;
	var_Columns.Add("City");
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h0 = var_Items.AddItem("Nancy Davolio");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"Seattle");
	h0 = var_Items.AddItem("Andrew Fuller");
	var_Items.set_CellValue(h0,1,"Vice President, Sales");
	var_Items.set_CellValue(h0,2,"Tacoma");
	var_Items.set_SelectItem(h0,true);
	h0 = var_Items.AddItem("Janet Leverling");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"Kirkland");
	h0 = var_Items.AddItem("Margaret Peacock");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"Redmond");
	h0 = var_Items.AddItem("Steven Buchanan");
	var_Items.set_CellValue(h0,1,"Sales Manager");
	var_Items.set_CellValue(h0,2,"London");
	h0 = var_Items.AddItem("Michael Suyama");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"London");
	h0 = var_Items.AddItem("Robert King");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"London");
	h0 = var_Items.AddItem("Laura Callahan");
	var_Items.set_CellValue(h0,1,"Inside Sales Coordinator");
	var_Items.set_CellValue(h0,2,"Seattle");
	h0 = var_Items.AddItem("Anne Dodsworth");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"London");
axGrid1.EndUpdate();

628
Is it possible to list only items that ends with any of specified strings

axGrid1.BeginUpdate();
axGrid1.ColumnAutoResize = true;
axGrid1.ContinueColumnScroll = false;
axGrid1.FocusColumnIndex = 1;
axGrid1.MarkSearchColumn = false;
axGrid1.SearchColumnIndex = 1;
axGrid1.FilterBarPromptVisible = EXGRIDLib.FilterBarVisibleEnum.exFilterBarPromptVisible;
axGrid1.FilterBarPromptType = EXGRIDLib.FilterPromptEnum.exFilterPromptEndWith;
axGrid1.FilterBarPromptColumns = "0";
axGrid1.FilterBarPromptPattern = "Fuller";
EXGRIDLib.Columns var_Columns = axGrid1.Columns;
	(var_Columns.Add("Name") as EXGRIDLib.Column).Width = 96;
	(var_Columns.Add("Title") as EXGRIDLib.Column).Width = 96;
	var_Columns.Add("City");
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h0 = var_Items.AddItem("Nancy Davolio");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"Seattle");
	h0 = var_Items.AddItem("Andrew Fuller");
	var_Items.set_CellValue(h0,1,"Vice President, Sales");
	var_Items.set_CellValue(h0,2,"Tacoma");
	var_Items.set_SelectItem(h0,true);
	h0 = var_Items.AddItem("Janet Leverling");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"Kirkland");
	h0 = var_Items.AddItem("Margaret Peacock");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"Redmond");
	h0 = var_Items.AddItem("Steven Buchanan");
	var_Items.set_CellValue(h0,1,"Sales Manager");
	var_Items.set_CellValue(h0,2,"London");
	h0 = var_Items.AddItem("Michael Suyama");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"London");
	h0 = var_Items.AddItem("Robert King");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"London");
	h0 = var_Items.AddItem("Laura Callahan");
	var_Items.set_CellValue(h0,1,"Inside Sales Coordinator");
	var_Items.set_CellValue(h0,2,"Seattle");
	h0 = var_Items.AddItem("Anne Dodsworth");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"London");
axGrid1.EndUpdate();

627
Is it possible to list only items that ends with any of specified strings

axGrid1.BeginUpdate();
axGrid1.ColumnAutoResize = true;
axGrid1.ContinueColumnScroll = false;
axGrid1.FocusColumnIndex = 1;
axGrid1.MarkSearchColumn = false;
axGrid1.SearchColumnIndex = 1;
axGrid1.FilterBarPromptVisible = EXGRIDLib.FilterBarVisibleEnum.exFilterBarPromptVisible;
axGrid1.FilterBarPromptType = EXGRIDLib.FilterPromptEnum.exFilterPromptEndWith;
axGrid1.FilterBarPromptColumns = "0";
axGrid1.FilterBarPromptPattern = "Fuller";
EXGRIDLib.Columns var_Columns = axGrid1.Columns;
	(var_Columns.Add("Name") as EXGRIDLib.Column).Width = 96;
	(var_Columns.Add("Title") as EXGRIDLib.Column).Width = 96;
	var_Columns.Add("City");
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h0 = var_Items.AddItem("Nancy Davolio");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"Seattle");
	h0 = var_Items.AddItem("Andrew Fuller");
	var_Items.set_CellValue(h0,1,"Vice President, Sales");
	var_Items.set_CellValue(h0,2,"Tacoma");
	var_Items.set_SelectItem(h0,true);
	h0 = var_Items.AddItem("Janet Leverling");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"Kirkland");
	h0 = var_Items.AddItem("Margaret Peacock");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"Redmond");
	h0 = var_Items.AddItem("Steven Buchanan");
	var_Items.set_CellValue(h0,1,"Sales Manager");
	var_Items.set_CellValue(h0,2,"London");
	h0 = var_Items.AddItem("Michael Suyama");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"London");
	h0 = var_Items.AddItem("Robert King");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"London");
	h0 = var_Items.AddItem("Laura Callahan");
	var_Items.set_CellValue(h0,1,"Inside Sales Coordinator");
	var_Items.set_CellValue(h0,2,"Seattle");
	h0 = var_Items.AddItem("Anne Dodsworth");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"London");
axGrid1.EndUpdate();

626
Is it possible to list only items that starts with any of specified strings

axGrid1.BeginUpdate();
axGrid1.ColumnAutoResize = true;
axGrid1.ContinueColumnScroll = false;
axGrid1.FocusColumnIndex = 1;
axGrid1.MarkSearchColumn = false;
axGrid1.SearchColumnIndex = 1;
axGrid1.FilterBarPromptVisible = EXGRIDLib.FilterBarVisibleEnum.exFilterBarPromptVisible;
axGrid1.FilterBarPromptType = EXGRIDLib.FilterPromptEnum.exFilterPromptStartWith;
axGrid1.FilterBarPromptColumns = "0";
axGrid1.FilterBarPromptPattern = "An M";
EXGRIDLib.Columns var_Columns = axGrid1.Columns;
	(var_Columns.Add("Name") as EXGRIDLib.Column).Width = 96;
	(var_Columns.Add("Title") as EXGRIDLib.Column).Width = 96;
	var_Columns.Add("City");
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h0 = var_Items.AddItem("Nancy Davolio");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"Seattle");
	h0 = var_Items.AddItem("Andrew Fuller");
	var_Items.set_CellValue(h0,1,"Vice President, Sales");
	var_Items.set_CellValue(h0,2,"Tacoma");
	var_Items.set_SelectItem(h0,true);
	h0 = var_Items.AddItem("Janet Leverling");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"Kirkland");
	h0 = var_Items.AddItem("Margaret Peacock");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"Redmond");
	h0 = var_Items.AddItem("Steven Buchanan");
	var_Items.set_CellValue(h0,1,"Sales Manager");
	var_Items.set_CellValue(h0,2,"London");
	h0 = var_Items.AddItem("Michael Suyama");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"London");
	h0 = var_Items.AddItem("Robert King");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"London");
	h0 = var_Items.AddItem("Laura Callahan");
	var_Items.set_CellValue(h0,1,"Inside Sales Coordinator");
	var_Items.set_CellValue(h0,2,"Seattle");
	h0 = var_Items.AddItem("Anne Dodsworth");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"London");
axGrid1.EndUpdate();

625
Is it possible to list only items that starts with specified string

axGrid1.BeginUpdate();
axGrid1.ColumnAutoResize = true;
axGrid1.ContinueColumnScroll = false;
axGrid1.FocusColumnIndex = 1;
axGrid1.MarkSearchColumn = false;
axGrid1.SearchColumnIndex = 1;
axGrid1.FilterBarPromptVisible = EXGRIDLib.FilterBarVisibleEnum.exFilterBarPromptVisible;
axGrid1.FilterBarPromptType = EXGRIDLib.FilterPromptEnum.exFilterPromptStartWith;
axGrid1.FilterBarPromptColumns = "0";
axGrid1.FilterBarPromptPattern = "A";
EXGRIDLib.Columns var_Columns = axGrid1.Columns;
	(var_Columns.Add("Name") as EXGRIDLib.Column).Width = 96;
	(var_Columns.Add("Title") as EXGRIDLib.Column).Width = 96;
	var_Columns.Add("City");
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h0 = var_Items.AddItem("Nancy Davolio");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"Seattle");
	h0 = var_Items.AddItem("Andrew Fuller");
	var_Items.set_CellValue(h0,1,"Vice President, Sales");
	var_Items.set_CellValue(h0,2,"Tacoma");
	var_Items.set_SelectItem(h0,true);
	h0 = var_Items.AddItem("Janet Leverling");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"Kirkland");
	h0 = var_Items.AddItem("Margaret Peacock");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"Redmond");
	h0 = var_Items.AddItem("Steven Buchanan");
	var_Items.set_CellValue(h0,1,"Sales Manager");
	var_Items.set_CellValue(h0,2,"London");
	h0 = var_Items.AddItem("Michael Suyama");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"London");
	h0 = var_Items.AddItem("Robert King");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"London");
	h0 = var_Items.AddItem("Laura Callahan");
	var_Items.set_CellValue(h0,1,"Inside Sales Coordinator");
	var_Items.set_CellValue(h0,2,"Seattle");
	h0 = var_Items.AddItem("Anne Dodsworth");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"London");
axGrid1.EndUpdate();

624
How can I specify that the list should include any of the seqeunces in the pattern

axGrid1.BeginUpdate();
axGrid1.ColumnAutoResize = true;
axGrid1.ContinueColumnScroll = false;
axGrid1.FocusColumnIndex = 1;
axGrid1.MarkSearchColumn = false;
axGrid1.SearchColumnIndex = 1;
axGrid1.FilterBarPromptVisible = EXGRIDLib.FilterBarVisibleEnum.exFilterBarPromptVisible;
axGrid1.FilterBarPromptType = EXGRIDLib.FilterPromptEnum.exFilterPromptContainsAny;
axGrid1.FilterBarPromptPattern = "london seattle";
EXGRIDLib.Columns var_Columns = axGrid1.Columns;
	(var_Columns.Add("Name") as EXGRIDLib.Column).Width = 96;
	(var_Columns.Add("Title") as EXGRIDLib.Column).Width = 96;
	var_Columns.Add("City");
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h0 = var_Items.AddItem("Nancy Davolio");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"Seattle");
	h0 = var_Items.AddItem("Andrew Fuller");
	var_Items.set_CellValue(h0,1,"Vice President, Sales");
	var_Items.set_CellValue(h0,2,"Tacoma");
	var_Items.set_SelectItem(h0,true);
	h0 = var_Items.AddItem("Janet Leverling");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"Kirkland");
	h0 = var_Items.AddItem("Margaret Peacock");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"Redmond");
	h0 = var_Items.AddItem("Steven Buchanan");
	var_Items.set_CellValue(h0,1,"Sales Manager");
	var_Items.set_CellValue(h0,2,"London");
	h0 = var_Items.AddItem("Michael Suyama");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"London");
	h0 = var_Items.AddItem("Robert King");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"London");
	h0 = var_Items.AddItem("Laura Callahan");
	var_Items.set_CellValue(h0,1,"Inside Sales Coordinator");
	var_Items.set_CellValue(h0,2,"Seattle");
	h0 = var_Items.AddItem("Anne Dodsworth");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"London");
axGrid1.EndUpdate();

623
How can I specify that all sequences in the filter pattern must be included in the list

axGrid1.BeginUpdate();
axGrid1.ColumnAutoResize = true;
axGrid1.ContinueColumnScroll = false;
axGrid1.FocusColumnIndex = 1;
axGrid1.MarkSearchColumn = false;
axGrid1.SearchColumnIndex = 1;
axGrid1.FilterBarPromptVisible = EXGRIDLib.FilterBarVisibleEnum.exFilterBarPromptVisible;
axGrid1.FilterBarPromptType = EXGRIDLib.FilterPromptEnum.exFilterPromptContainsAll;
axGrid1.FilterBarPromptPattern = "london manager";
EXGRIDLib.Columns var_Columns = axGrid1.Columns;
	(var_Columns.Add("Name") as EXGRIDLib.Column).Width = 96;
	(var_Columns.Add("Title") as EXGRIDLib.Column).Width = 96;
	var_Columns.Add("City");
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h0 = var_Items.AddItem("Nancy Davolio");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"Seattle");
	h0 = var_Items.AddItem("Andrew Fuller");
	var_Items.set_CellValue(h0,1,"Vice President, Sales");
	var_Items.set_CellValue(h0,2,"Tacoma");
	var_Items.set_SelectItem(h0,true);
	h0 = var_Items.AddItem("Janet Leverling");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"Kirkland");
	h0 = var_Items.AddItem("Margaret Peacock");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"Redmond");
	h0 = var_Items.AddItem("Steven Buchanan");
	var_Items.set_CellValue(h0,1,"Sales Manager");
	var_Items.set_CellValue(h0,2,"London");
	h0 = var_Items.AddItem("Michael Suyama");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"London");
	h0 = var_Items.AddItem("Robert King");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"London");
	h0 = var_Items.AddItem("Laura Callahan");
	var_Items.set_CellValue(h0,1,"Inside Sales Coordinator");
	var_Items.set_CellValue(h0,2,"Seattle");
	h0 = var_Items.AddItem("Anne Dodsworth");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"London");
axGrid1.EndUpdate();

622
How do I change at runtime the filter prompt

axGrid1.BeginUpdate();
axGrid1.ColumnAutoResize = true;
axGrid1.ContinueColumnScroll = false;
axGrid1.FocusColumnIndex = 1;
axGrid1.MarkSearchColumn = false;
axGrid1.SearchColumnIndex = 1;
axGrid1.FilterBarPromptVisible = EXGRIDLib.FilterBarVisibleEnum.exFilterBarPromptVisible;
axGrid1.FilterBarPromptPattern = "london manager";
EXGRIDLib.Columns var_Columns = axGrid1.Columns;
	(var_Columns.Add("Name") as EXGRIDLib.Column).Width = 96;
	(var_Columns.Add("Title") as EXGRIDLib.Column).Width = 96;
	var_Columns.Add("City");
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h0 = var_Items.AddItem("Nancy Davolio");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"Seattle");
	h0 = var_Items.AddItem("Andrew Fuller");
	var_Items.set_CellValue(h0,1,"Vice President, Sales");
	var_Items.set_CellValue(h0,2,"Tacoma");
	var_Items.set_SelectItem(h0,true);
	h0 = var_Items.AddItem("Janet Leverling");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"Kirkland");
	h0 = var_Items.AddItem("Margaret Peacock");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"Redmond");
	h0 = var_Items.AddItem("Steven Buchanan");
	var_Items.set_CellValue(h0,1,"Sales Manager");
	var_Items.set_CellValue(h0,2,"London");
	h0 = var_Items.AddItem("Michael Suyama");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"London");
	h0 = var_Items.AddItem("Robert King");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"London");
	h0 = var_Items.AddItem("Laura Callahan");
	var_Items.set_CellValue(h0,1,"Inside Sales Coordinator");
	var_Items.set_CellValue(h0,2,"Seattle");
	h0 = var_Items.AddItem("Anne Dodsworth");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"London");
axGrid1.EndUpdate();

621
How do I specify to filter only a single column when using the filter prompt

axGrid1.BeginUpdate();
axGrid1.ColumnAutoResize = true;
axGrid1.ContinueColumnScroll = false;
axGrid1.FocusColumnIndex = 1;
axGrid1.MarkSearchColumn = false;
axGrid1.SearchColumnIndex = 1;
axGrid1.FilterBarPromptVisible = EXGRIDLib.FilterBarVisibleEnum.exFilterBarPromptVisible;
axGrid1.FilterBarPromptColumns = "2,3";
axGrid1.FilterBarPromptPattern = "london";
EXGRIDLib.Columns var_Columns = axGrid1.Columns;
	(var_Columns.Add("Name") as EXGRIDLib.Column).Width = 96;
	(var_Columns.Add("Title") as EXGRIDLib.Column).Width = 96;
	var_Columns.Add("City");
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h0 = var_Items.AddItem("Nancy Davolio");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"Seattle");
	h0 = var_Items.AddItem("Andrew Fuller");
	var_Items.set_CellValue(h0,1,"Vice President, Sales");
	var_Items.set_CellValue(h0,2,"Tacoma");
	var_Items.set_SelectItem(h0,true);
	h0 = var_Items.AddItem("Janet Leverling");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"Kirkland");
	h0 = var_Items.AddItem("Margaret Peacock");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"Redmond");
	h0 = var_Items.AddItem("Steven Buchanan");
	var_Items.set_CellValue(h0,1,"Sales Manager");
	var_Items.set_CellValue(h0,2,"London");
	h0 = var_Items.AddItem("Michael Suyama");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"London");
	h0 = var_Items.AddItem("Robert King");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"London");
	h0 = var_Items.AddItem("Laura Callahan");
	var_Items.set_CellValue(h0,1,"Inside Sales Coordinator");
	var_Items.set_CellValue(h0,2,"Seattle");
	h0 = var_Items.AddItem("Anne Dodsworth");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"London");
axGrid1.EndUpdate();

620
How do I change the prompt or the caption being displayed in the filter bar

axGrid1.BeginUpdate();
axGrid1.ColumnAutoResize = true;
axGrid1.ContinueColumnScroll = false;
axGrid1.FocusColumnIndex = 1;
axGrid1.MarkSearchColumn = false;
axGrid1.SearchColumnIndex = 1;
axGrid1.FilterBarPromptVisible = EXGRIDLib.FilterBarVisibleEnum.exFilterBarPromptVisible;
axGrid1.FilterBarPrompt = "changed";
EXGRIDLib.Columns var_Columns = axGrid1.Columns;
	(var_Columns.Add("Name") as EXGRIDLib.Column).Width = 96;
	(var_Columns.Add("Title") as EXGRIDLib.Column).Width = 96;
	var_Columns.Add("City");
axGrid1.EndUpdate();

619
How do I enable the filter prompt feature

axGrid1.BeginUpdate();
axGrid1.ColumnAutoResize = true;
axGrid1.ContinueColumnScroll = false;
axGrid1.FocusColumnIndex = 1;
axGrid1.MarkSearchColumn = false;
axGrid1.SearchColumnIndex = 1;
axGrid1.FilterBarPromptVisible = EXGRIDLib.FilterBarVisibleEnum.exFilterBarPromptVisible;
EXGRIDLib.Columns var_Columns = axGrid1.Columns;
	(var_Columns.Add("Name") as EXGRIDLib.Column).Width = 96;
	(var_Columns.Add("Title") as EXGRIDLib.Column).Width = 96;
	var_Columns.Add("City");
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h0 = var_Items.AddItem("Nancy Davolio");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"Seattle");
	h0 = var_Items.AddItem("Andrew Fuller");
	var_Items.set_CellValue(h0,1,"Vice President, Sales");
	var_Items.set_CellValue(h0,2,"Tacoma");
	var_Items.set_SelectItem(h0,true);
	h0 = var_Items.AddItem("Janet Leverling");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"Kirkland");
	h0 = var_Items.AddItem("Margaret Peacock");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"Redmond");
	h0 = var_Items.AddItem("Steven Buchanan");
	var_Items.set_CellValue(h0,1,"Sales Manager");
	var_Items.set_CellValue(h0,2,"London");
	h0 = var_Items.AddItem("Michael Suyama");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"London");
	h0 = var_Items.AddItem("Robert King");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"London");
	h0 = var_Items.AddItem("Laura Callahan");
	var_Items.set_CellValue(h0,1,"Inside Sales Coordinator");
	var_Items.set_CellValue(h0,2,"Seattle");
	h0 = var_Items.AddItem("Anne Dodsworth");
	var_Items.set_CellValue(h0,1,"Sales Representative");
	var_Items.set_CellValue(h0,2,"London");
axGrid1.EndUpdate();

618
How can I control the colors that can be applied to an EBN part

// Change event - Occurs when the user changes the cell's content.
private void axGrid1_Change(object sender, AxEXGRIDLib._IGridEvents_ChangeEvent e)
{
	EXGRIDLib.Items var_Items = axGrid1.Items;
		var_Items.set_ItemBackColor(var_Items.FirstVisibleItem,e.newValue);
}
//this.axGrid1.Change += new AxEXGRIDLib._IGridEvents_ChangeEventHandler(this.axGrid1_Change);

axGrid1.BeginUpdate();
EXGRIDLib.Appearance var_Appearance = axGrid1.VisualAppearance;
	var_Appearance.Add(2,"c:\\exontrol\\images\\normal.ebn");
	var_Appearance.Add(1,"CP:2 10 3 -10 -5");
axGrid1.SelBackColor = axGrid1.BackColor;
axGrid1.SelForeColor = axGrid1.ForeColor;
axGrid1.ScrollBySingleLine = true;
axGrid1.TreeColumnIndex = -1;
EXGRIDLib.Columns var_Columns = axGrid1.Columns;
	EXGRIDLib.Column var_Column = (var_Columns.Add("Test") as EXGRIDLib.Column);
		var_Column.Width = 32;
	EXGRIDLib.Column var_Column1 = (var_Columns.Add("RGB") as EXGRIDLib.Column);
		EXGRIDLib.Editor var_Editor = var_Column1.Editor;
			var_Editor.EditType = EXGRIDLib.EditTypeEnum.SliderType;
			var_Editor.set_Option(EXGRIDLib.EditorOptionEnum.exSliderMax,255);
			var_Editor.set_Option(EXGRIDLib.EditorOptionEnum.exSliderWidth,-60);
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h = var_Items.AddItem("");
	var_Items.set_CellHAlignment(h,0,EXGRIDLib.AlignmentEnum.CenterAlignment);
	var_Items.set_ItemDivider(h,0);
	var_Items.set_ItemBackColor(h,0x1000000);
	var_Items.set_ItemHeight(h,36);
	var_Items.set_SelectableItem(h,false);
	h = var_Items.InsertItem(0,1,"Red");
	var_Items.set_CellValue(h,1,255);
	h = var_Items.InsertItem(0,255,"Green");
	var_Items.set_CellValue(h,1,255);
	h = var_Items.InsertItem(0,65536,"Blue");
	var_Items.set_CellValue(h,1,255);
axGrid1.EndUpdate();

617
I know this is fairly basic, but could you send me a sample that places a tree in the first column

axGrid1.BeginUpdate();
axGrid1.LinesAtRoot = EXGRIDLib.LinesAtRootEnum.exLinesAtRoot;
axGrid1.Columns.Add("heading");
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h = var_Items.AddItem("Parent 1");
	var_Items.InsertItem(h,null,"Child A");
	var_Items.InsertItem(var_Items.InsertItem(h,null,"Child B"),null,"GrandChild C");
	var_Items.set_ExpandItem(h,true);
	h = var_Items.AddItem("Parent 2");
	var_Items.InsertItem(h,null,"Child D");
	var_Items.InsertItem(h,null,"Child E");
	var_Items.set_ExpandItem(h,true);
axGrid1.EndUpdate();

616
How can I get the caption of focused item
// SelectionChanged event - Fired after a new item has been selected.
private void axGrid1_SelectionChanged(object sender, EventArgs e)
{
	EXGRIDLib.Items var_Items = axGrid1.Items;
		System.Diagnostics.Debug.Print( "Handle" );
		System.Diagnostics.Debug.Print( var_Items.FocusItem.ToString() );
		System.Diagnostics.Debug.Print( "Caption" );
		System.Diagnostics.Debug.Print( var_Items.get_CellCaption(var_Items.FocusItem,0) );
}
//this.axGrid1.SelectionChanged += new EventHandler(this.axGrid1_SelectionChanged);

axGrid1.BeginUpdate();
axGrid1.LinesAtRoot = EXGRIDLib.LinesAtRootEnum.exLinesAtRoot;
axGrid1.Columns.Add("Items");
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h = var_Items.AddItem("R1");
	var_Items.InsertItem(h,null,"Cell 1.1");
	var_Items.InsertItem(h,null,"Cell 1.2");
	var_Items.set_ExpandItem(h,true);
	h = var_Items.AddItem("R2");
	var_Items.InsertItem(h,null,"Cell 2.1");
	var_Items.InsertItem(h,null,"Cell 2.2");
	var_Items.set_ExpandItem(h,true);
axGrid1.EndUpdate();

615
How can I get the caption of selected item
// SelectionChanged event - Fired after a new item has been selected.
private void axGrid1_SelectionChanged(object sender, EventArgs e)
{
	EXGRIDLib.Items var_Items = axGrid1.Items;
		System.Diagnostics.Debug.Print( "Handle" );
		System.Diagnostics.Debug.Print( var_Items.get_SelectedItem(0).ToString() );
		System.Diagnostics.Debug.Print( "Caption" );
		System.Diagnostics.Debug.Print( var_Items.get_CellCaption(var_Items.get_SelectedItem(0),0) );
}
//this.axGrid1.SelectionChanged += new EventHandler(this.axGrid1_SelectionChanged);

axGrid1.BeginUpdate();
axGrid1.LinesAtRoot = EXGRIDLib.LinesAtRootEnum.exLinesAtRoot;
axGrid1.Columns.Add("Items");
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h = var_Items.AddItem("R1");
	var_Items.InsertItem(h,null,"Cell 1.1");
	var_Items.InsertItem(h,null,"Cell 1.2");
	var_Items.set_ExpandItem(h,true);
	h = var_Items.AddItem("R2");
	var_Items.InsertItem(h,null,"Cell 2.1");
	var_Items.InsertItem(h,null,"Cell 2.2");
	var_Items.set_ExpandItem(h,true);
axGrid1.EndUpdate();

614
Is it possible to let users selects cells as in Excel

axGrid1.BeginUpdate();
axGrid1.FullRowSelect = EXGRIDLib.CellSelectEnum.exRectSel;
axGrid1.SingleSel = false;
axGrid1.ReadOnly = EXGRIDLib.ReadOnlyEnum.exReadOnly;
axGrid1.MarkSearchColumn = false;
axGrid1.ShowFocusRect = false;
axGrid1.LinesAtRoot = EXGRIDLib.LinesAtRootEnum.exLinesAtRoot;
axGrid1.SelForeColor = Color.FromArgb(0,0,0);
axGrid1.SelBackColor = Color.FromArgb(200,225,242);
EXGRIDLib.Columns var_Columns = axGrid1.Columns;
	var_Columns.Add("A");
	EXGRIDLib.Column var_Column = (var_Columns.Add("B") as EXGRIDLib.Column);
		var_Column.AllowSizing = false;
		var_Column.Width = 24;
	EXGRIDLib.Column var_Column1 = (var_Columns.Add("C") as EXGRIDLib.Column);
		var_Column1.AllowSizing = false;
		var_Column1.Width = 24;
		var_Column1.set_Def(EXGRIDLib.DefColumnEnum.exCellHasCheckBox,1);
		var_Column1.PartialCheck = true;
	EXGRIDLib.Column var_Column2 = (var_Columns.Add("D") as EXGRIDLib.Column);
		var_Column2.AllowSizing = false;
		var_Column2.Width = 24;
		var_Column2.set_Def(EXGRIDLib.DefColumnEnum.exCellHasRadioButton,1);
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h = var_Items.InsertItem(null,null,"Group 1");
	int h1 = var_Items.InsertItem(h,null,16);
	var_Items.set_CellValue(h1,1,17);
	h1 = var_Items.InsertItem(h,null,2);
	var_Items.set_CellValue(h1,1,11);
	h1 = var_Items.InsertItem(h,null,2);
	var_Items.set_ItemBackColor(h1,(uint)ColorTranslator.ToWin32(Color.FromArgb(240,240,240)));
	var_Items.set_CellValue(h1,1,9);
	var_Items.set_ExpandItem(h,true);
	h = var_Items.InsertItem(null,null,"Group 2");
	var_Items.set_CellValueFormat(h,2,EXGRIDLib.ValueFormatEnum.exHTML);
	h1 = var_Items.InsertItem(h,null,16);
	var_Items.set_CellValue(h1,1,9);
	h1 = var_Items.InsertItem(h,null,12);
	var_Items.set_CellValue(h1,1,11);
	h1 = var_Items.InsertItem(h,null,2);
	var_Items.set_CellValue(h1,1,2);
	var_Items.set_ExpandItem(h,true);
	var_Items.set_SelectItem(h,true);
axGrid1.EndUpdate();

613
Is it possible to change the style for the vertical or horizontal grid lines, in the list area

axGrid1.BeginUpdate();
axGrid1.DrawGridLines = EXGRIDLib.GridLinesEnum.exAllLines;
axGrid1.GridLineStyle = EXGRIDLib.GridLinesStyleEnum.exGridLinesVSolid | EXGRIDLib.GridLinesStyleEnum.exGridLinesHDot4;
axGrid1.Columns.Add("C1");
axGrid1.Columns.Add("C2");
axGrid1.Columns.Add("C3");
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h = var_Items.AddItem("Item 1");
	var_Items.set_CellValue(h,1,"SubItem 1.2");
	var_Items.set_CellValue(h,2,"SubItem 1.3");
	h = var_Items.AddItem("Item 2");
	var_Items.set_CellValue(h,1,"SubItem 2.2");
	var_Items.set_CellValue(h,2,"SubItem 2.3");
axGrid1.EndUpdate();

612
Is it possible to change the style for the grid lines, for instance to be solid not dotted

axGrid1.BeginUpdate();
axGrid1.DrawGridLines = EXGRIDLib.GridLinesEnum.exAllLines;
axGrid1.GridLineStyle = EXGRIDLib.GridLinesStyleEnum.exGridLinesSolid;
axGrid1.Columns.Add("Column");
axGrid1.EndUpdate();

611
I have some buttons added on the control's scroll bar, how can I can know when the button is being clicked

// ScrollButtonClick event - Occurs when the user clicks a button in the scrollbar.
private void axGrid1_ScrollButtonClick(object sender, AxEXGRIDLib._IGridEvents_ScrollButtonClickEvent e)
{
	System.Diagnostics.Debug.Print( e.scrollBar.ToString() );
	System.Diagnostics.Debug.Print( e.scrollPart.ToString() );
}
//this.axGrid1.ScrollButtonClick += new AxEXGRIDLib._IGridEvents_ScrollButtonClickEventHandler(this.axGrid1_ScrollButtonClick);

axGrid1.set_ScrollPartVisible(EXGRIDLib.ScrollBarEnum.exHScroll,EXGRIDLib.ScrollPartEnum.exLeftB1Part,true);
axGrid1.set_ScrollPartVisible(EXGRIDLib.ScrollBarEnum.exHScroll,EXGRIDLib.ScrollPartEnum.exLeftB2Part,true);
axGrid1.set_ScrollPartVisible(EXGRIDLib.ScrollBarEnum.exHScroll,EXGRIDLib.ScrollPartEnum.exRightB6Part,true);
axGrid1.set_ScrollPartVisible(EXGRIDLib.ScrollBarEnum.exHScroll,EXGRIDLib.ScrollPartEnum.exRightB5Part,true);
axGrid1.ScrollBars = EXGRIDLib.ScrollBarsEnum.exDisableNoHorizontal;

610
How do I get notified once the user clicks a hyperlink created using the anchor HTML tag

// AnchorClick event - Occurs when an anchor element is clicked.
private void axGrid1_AnchorClick(object sender, AxEXGRIDLib._IGridEvents_AnchorClickEvent e)
{
	System.Diagnostics.Debug.Print( e.anchorID.ToString() );
	System.Diagnostics.Debug.Print( e.options.ToString() );
}
//this.axGrid1.AnchorClick += new AxEXGRIDLib._IGridEvents_AnchorClickEventHandler(this.axGrid1_AnchorClick);

(axGrid1.Columns.Add("Default") as EXGRIDLib.Column).set_Def(EXGRIDLib.DefColumnEnum.exCellValueFormat,1);
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.AddItem("This is a link: <aex.com;1>www.exontrol.com</a>");
	var_Items.AddItem("This is a link: <aex.net;2>www.exontrol.net</a>");

609
Is it possible to start editing a cell when double click it

// DblClick event - Occurs when the user dblclk the left mouse button over an object.
private void axGrid1_DblClick(object sender, AxEXGRIDLib._IGridEvents_DblClickEvent e)
{
	axGrid1.Edit(null);
}
//this.axGrid1.DblClick += new AxEXGRIDLib._IGridEvents_DblClickEventHandler(this.axGrid1_DblClick);

axGrid1.BeginUpdate();
axGrid1.AutoEdit = false;
axGrid1.MarkSearchColumn = false;
(axGrid1.Columns.Add("Edit1") as EXGRIDLib.Column).Editor.EditType = EXGRIDLib.EditTypeEnum.EditType;
(axGrid1.Columns.Add("Edit2") as EXGRIDLib.Column).Editor.EditType = EXGRIDLib.EditTypeEnum.EditType;
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.set_CellValue(var_Items.AddItem(1),1,2);
EXGRIDLib.Items var_Items1 = axGrid1.Items;
	var_Items1.set_CellValue(var_Items1.AddItem(3),1,4);
axGrid1.EndUpdate();

608
Is it possible to disable standard single-click behavior for this column, so I manually could call Edit() when needed

// DblClick event - Occurs when the user dblclk the left mouse button over an object.
private void axGrid1_DblClick(object sender, AxEXGRIDLib._IGridEvents_DblClickEvent e)
{
	axGrid1.Edit(null);
}
//this.axGrid1.DblClick += new AxEXGRIDLib._IGridEvents_DblClickEventHandler(this.axGrid1_DblClick);

axGrid1.BeginUpdate();
axGrid1.AutoEdit = false;
axGrid1.MarkSearchColumn = false;
(axGrid1.Columns.Add("Edit1") as EXGRIDLib.Column).Editor.EditType = EXGRIDLib.EditTypeEnum.EditType;
(axGrid1.Columns.Add("Edit2") as EXGRIDLib.Column).Editor.EditType = EXGRIDLib.EditTypeEnum.EditType;
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.set_CellValue(var_Items.AddItem(1),1,2);
EXGRIDLib.Items var_Items1 = axGrid1.Items;
	var_Items1.set_CellValue(var_Items1.AddItem(3),1,4);
axGrid1.EndUpdate();

607
How can I get or restore the old or previously value for the cell being changed
// Change event - Occurs when the user changes the cell's content.
private void axGrid1_Change(object sender, AxEXGRIDLib._IGridEvents_ChangeEvent e)
{
	System.Diagnostics.Debug.Print( "Old-Value:" );
	System.Diagnostics.Debug.Print( axGrid1.Items.get_CellValue(e.item,e.colIndex).ToString() );
	System.Diagnostics.Debug.Print( "New-Value:" );
	System.Diagnostics.Debug.Print( e.newValue.ToString() );
}
//this.axGrid1.Change += new AxEXGRIDLib._IGridEvents_ChangeEventHandler(this.axGrid1_Change);

axGrid1.BeginUpdate();
axGrid1.MarkSearchColumn = false;
(axGrid1.Columns.Add("Edit1") as EXGRIDLib.Column).Editor.EditType = EXGRIDLib.EditTypeEnum.EditType;
(axGrid1.Columns.Add("Edit2") as EXGRIDLib.Column).Editor.EditType = EXGRIDLib.EditTypeEnum.EditType;
EXGRIDLib.Items var_Items = axGrid1.Items;
	var_Items.set_CellValue(var_Items.AddItem(1),1,2);
EXGRIDLib.Items var_Items1 = axGrid1.Items;
	var_Items1.set_CellValue(var_Items1.AddItem(3),1,4);
axGrid1.EndUpdate();

606
How can I get the item from the cursor
// MouseMove event - Occurs when the user moves the mouse.
private void axGrid1_MouseMoveEvent(object sender, AxEXGRIDLib._IGridEvents_MouseMoveEvent e)
{
	int h = axGrid1.get_ItemFromPoint(-1,-1,c,hit);
	System.Diagnostics.Debug.Print( "Handle" );
	System.Diagnostics.Debug.Print( h.ToString() );
	System.Diagnostics.Debug.Print( "Index" );
	System.Diagnostics.Debug.Print( axGrid1.Items.get_ItemToIndex(h).ToString() );
}
//this.axGrid1.MouseMoveEvent += new AxEXGRIDLib._IGridEvents_MouseMoveEventHandler(this.axGrid1_MouseMoveEvent);

axGrid1.BeginUpdate();
axGrid1.LinesAtRoot = EXGRIDLib.LinesAtRootEnum.exLinesAtRoot;
axGrid1.DrawGridLines = EXGRIDLib.GridLinesEnum.exHLines;
axGrid1.Columns.Add("Items");
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h = var_Items.AddItem("R1");
	var_Items.InsertItem(h,null,"Cell 1.1");
	var_Items.InsertItem(h,null,"Cell 1.2");
	var_Items.set_ExpandItem(h,true);
	h = var_Items.AddItem("R2");
	var_Items.InsertItem(h,null,"Cell 2.1");
	var_Items.InsertItem(h,null,"Cell 2.2");
	var_Items.set_ExpandItem(h,true);
axGrid1.EndUpdate();

605
How can I get the column from the cursor, not only in the header

// MouseMove event - Occurs when the user moves the mouse.
private void axGrid1_MouseMoveEvent(object sender, AxEXGRIDLib._IGridEvents_MouseMoveEvent e)
{
	System.Diagnostics.Debug.Print( axGrid1.get_ColumnFromPoint(-1,0).ToString() );
}
//this.axGrid1.MouseMoveEvent += new AxEXGRIDLib._IGridEvents_MouseMoveEventHandler(this.axGrid1_MouseMoveEvent);

axGrid1.BeginUpdate();
axGrid1.LinesAtRoot = EXGRIDLib.LinesAtRootEnum.exLinesAtRoot;
axGrid1.Columns.Add("P1");
axGrid1.Columns.Add("P2");
axGrid1.DrawGridLines = EXGRIDLib.GridLinesEnum.exAllLines;
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h = var_Items.AddItem("R1");
	var_Items.set_CellValue(h,1,"R2");
	var_Items.set_CellValue(var_Items.InsertItem(h,null,"Cell 1.1"),1,"Cell 1.2");
	var_Items.set_CellValue(var_Items.InsertItem(h,null,"Cell 2.1"),1,"Cell 2.2");
	var_Items.set_ExpandItem(h,true);
axGrid1.EndUpdate();

604
How can I get the column from the cursor

// MouseMove event - Occurs when the user moves the mouse.
private void axGrid1_MouseMoveEvent(object sender, AxEXGRIDLib._IGridEvents_MouseMoveEvent e)
{
	System.Diagnostics.Debug.Print( axGrid1.get_ColumnFromPoint(-1,-1).ToString() );
}
//this.axGrid1.MouseMoveEvent += new AxEXGRIDLib._IGridEvents_MouseMoveEventHandler(this.axGrid1_MouseMoveEvent);

axGrid1.BeginUpdate();
axGrid1.LinesAtRoot = EXGRIDLib.LinesAtRootEnum.exLinesAtRoot;
axGrid1.DrawGridLines = EXGRIDLib.GridLinesEnum.exAllLines;
axGrid1.Columns.Add("P1");
axGrid1.Columns.Add("P2");
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h = var_Items.AddItem("R1");
	var_Items.set_CellValue(h,1,"R2");
	var_Items.set_CellValue(var_Items.InsertItem(h,null,"Cell 1.1"),1,"Cell 1.2");
	var_Items.set_CellValue(var_Items.InsertItem(h,null,"Cell 2.1"),1,"Cell 2.2");
	var_Items.set_ExpandItem(h,true);
axGrid1.EndUpdate();

603
How can I get the cell's caption from the cursor
// MouseMove event - Occurs when the user moves the mouse.
private void axGrid1_MouseMoveEvent(object sender, AxEXGRIDLib._IGridEvents_MouseMoveEvent e)
{
	int h = axGrid1.get_ItemFromPoint(-1,-1,c,hit);
	System.Diagnostics.Debug.Print( axGrid1.Items.get_CellCaption(h,c) );
}
//this.axGrid1.MouseMoveEvent += new AxEXGRIDLib._IGridEvents_MouseMoveEventHandler(this.axGrid1_MouseMoveEvent);

axGrid1.BeginUpdate();
axGrid1.LinesAtRoot = EXGRIDLib.LinesAtRootEnum.exLinesAtRoot;
axGrid1.Columns.Add("Items");
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h = var_Items.AddItem("R1");
	var_Items.InsertItem(h,null,"Cell 1.1");
	var_Items.InsertItem(h,null,"Cell 1.2");
	var_Items.set_ExpandItem(h,true);
	h = var_Items.AddItem("R2");
	var_Items.InsertItem(h,null,"Cell 2.1");
	var_Items.InsertItem(h,null,"Cell 2.2");
	var_Items.set_ExpandItem(h,true);
axGrid1.EndUpdate();

602
How can I customize the items based on the values in the cells

axGrid1.BeginUpdate();
axGrid1.MarkSearchColumn = false;
EXGRIDLib.ConditionalFormats var_ConditionalFormats = axGrid1.ConditionalFormats;
	EXGRIDLib.ConditionalFormat var_ConditionalFormat = var_ConditionalFormats.Add("%1 >4",null);
		var_ConditionalFormat.Bold = true;
		var_ConditionalFormat.StrikeOut = true;
		var_ConditionalFormat.ForeColor = (uint)ColorTranslator.ToWin32(Color.FromArgb(255,0,0));
		var_ConditionalFormat.ApplyTo = EXGRIDLib.FormatApplyToEnum.exFormatToItems;
	EXGRIDLib.ConditionalFormat var_ConditionalFormat1 = var_ConditionalFormats.Add("%2 > 4",null);
		var_ConditionalFormat1.Bold = true;
		var_ConditionalFormat1.StrikeOut = true;
		var_ConditionalFormat1.ForeColor = (uint)ColorTranslator.ToWin32(Color.FromArgb(255,0,0));
		var_ConditionalFormat1.ApplyTo = (EXGRIDLib.FormatApplyToEnum)0x2;
	EXGRIDLib.ConditionalFormat var_ConditionalFormat2 = var_ConditionalFormats.Add("%3 > 4",null);
		var_ConditionalFormat2.Bold = true;
		var_ConditionalFormat2.StrikeOut = true;
		var_ConditionalFormat2.ForeColor = (uint)ColorTranslator.ToWin32(Color.FromArgb(255,0,0));
		var_ConditionalFormat2.ApplyTo = (EXGRIDLib.FormatApplyToEnum)0x3;
EXGRIDLib.Columns var_Columns = axGrid1.Columns;
	var_Columns.Add("Name");
	EXGRIDLib.Column var_Column = (var_Columns.Add("A") as EXGRIDLib.Column);
		var_Column.SortType = EXGRIDLib.SortTypeEnum.SortNumeric;
		var_Column.AllowSizing = false;
		var_Column.Width = 36;
		var_Column.FormatColumn = "len(value) ? value + ' +'";
		var_Column.Editor.EditType = EXGRIDLib.EditTypeEnum.SpinType;
	EXGRIDLib.Column var_Column1 = (var_Columns.Add("B") as EXGRIDLib.Column);
		var_Column1.SortType = EXGRIDLib.SortTypeEnum.SortNumeric;
		var_Column1.AllowSizing = false;
		var_Column1.Width = 36;
		var_Column1.FormatColumn = "len(value) ? value + ' +'";
		var_Column1.Editor.EditType = EXGRIDLib.EditTypeEnum.SpinType;
	EXGRIDLib.Column var_Column2 = (var_Columns.Add("C") as EXGRIDLib.Column);
		var_Column2.SortType = EXGRIDLib.SortTypeEnum.SortNumeric;
		var_Column2.AllowSizing = false;
		var_Column2.Width = 36;
		var_Column2.FormatColumn = "len(value) ? value + ' ='";
		var_Column2.Editor.EditType = EXGRIDLib.EditTypeEnum.SpinType;
	EXGRIDLib.Column var_Column3 = (var_Columns.Add("A+B+C") as EXGRIDLib.Column);
		var_Column3.SortType = EXGRIDLib.SortTypeEnum.SortNumeric;
		var_Column3.AllowSizing = false;
		var_Column3.Width = 64;
		var_Column3.ComputedField = "%1+%2+%3";
		var_Column3.FormatColumn = "((0:=dbl(value)) < 10? '<fgcolor=808080><font ;7>' :'<b>') + currency(=:0)";
		var_Column3.set_Def(EXGRIDLib.DefColumnEnum.exCellValueFormat,1);
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h = var_Items.AddItem("Root");
	var_Items.set_CellValueFormat(h,4,EXGRIDLib.ValueFormatEnum.exComputedField);
	int h1 = var_Items.InsertItem(h,null,"Child 1");
	var_Items.set_CellValue(h1,1,7);
	var_Items.set_CellValue(h1,2,3);
	var_Items.set_CellValue(h1,3,1);
	h1 = var_Items.InsertItem(h,null,"Child 2");
	var_Items.set_CellValue(h1,1,2);
	var_Items.set_CellValue(h1,2,5);
	var_Items.set_CellValue(h1,3,12);
	h1 = var_Items.InsertItem(h,null,"Child 3");
	var_Items.set_CellValue(h1,1,2);
	var_Items.set_CellValue(h1,2,2);
	var_Items.set_CellValue(h1,3,4);
	h1 = var_Items.InsertItem(h,null,"Child 4");
	var_Items.set_CellValue(h1,1,2);
	var_Items.set_CellValue(h1,2,9);
	var_Items.set_CellValue(h1,3,4);
	var_Items.set_ExpandItem(h,true);
axGrid1.EndUpdate();

601
Is it is possible to have a column computing values from other columns

axGrid1.BeginUpdate();
axGrid1.MarkSearchColumn = false;
EXGRIDLib.Columns var_Columns = axGrid1.Columns;
	var_Columns.Add("Name");
	EXGRIDLib.Column var_Column = (var_Columns.Add("A") as EXGRIDLib.Column);
		var_Column.SortType = EXGRIDLib.SortTypeEnum.SortNumeric;
		var_Column.AllowSizing = false;
		var_Column.Width = 36;
		var_Column.FormatColumn = "len(value) ? value + ' +'";
		var_Column.Editor.EditType = EXGRIDLib.EditTypeEnum.SpinType;
	EXGRIDLib.Column var_Column1 = (var_Columns.Add("B") as EXGRIDLib.Column);
		var_Column1.SortType = EXGRIDLib.SortTypeEnum.SortNumeric;
		var_Column1.AllowSizing = false;
		var_Column1.Width = 36;
		var_Column1.FormatColumn = "len(value) ? value + ' +'";
		var_Column1.Editor.EditType = EXGRIDLib.EditTypeEnum.SpinType;
	EXGRIDLib.Column var_Column2 = (var_Columns.Add("C") as EXGRIDLib.Column);
		var_Column2.SortType = EXGRIDLib.SortTypeEnum.SortNumeric;
		var_Column2.AllowSizing = false;
		var_Column2.Width = 36;
		var_Column2.FormatColumn = "len(value) ? value + ' ='";
		var_Column2.Editor.EditType = EXGRIDLib.EditTypeEnum.SpinType;
	EXGRIDLib.Column var_Column3 = (var_Columns.Add("A+B+C") as EXGRIDLib.Column);
		var_Column3.SortType = EXGRIDLib.SortTypeEnum.SortNumeric;
		var_Column3.AllowSizing = false;
		var_Column3.Width = 64;
		var_Column3.ComputedField = "%1+%2+%3";
		var_Column3.FormatColumn = "((0:=dbl(value)) < 10? '<fgcolor=808080><font ;7>' :'<b>') + currency(=:0)";
		var_Column3.set_Def(EXGRIDLib.DefColumnEnum.exCellValueFormat,1);
EXGRIDLib.Items var_Items = axGrid1.Items;
	int h = var_Items.AddItem("Root");
	var_Items.set_CellValueFormat(h,4,EXGRIDLib.ValueFormatEnum.exComputedField);
	int h1 = var_Items.InsertItem(h,null,"Child 1");
	var_Items.set_CellValue(h1,1,7);
	var_Items.set_CellValue(h1,2,3);
	var_Items.set_CellValue(h1,3,1);
	h1 = var_Items.InsertItem(h,null,"Child 2");
	var_Items.set_CellValue(h1,1,2);
	var_Items.set_CellValue(h1,2,5);
	var_Items.set_CellValue(h1,3,12);
	h1 = var_Items.InsertItem(h,null,"Child 3");
	var_Items.set_CellValue(h1,1,2);
	var_Items.set_CellValue(h1,2,2);
	var_Items.set_CellValue(h1,3,4);
	h1 = var_Items.InsertItem(h,null,"Child 4");
	var_Items.set_CellValue(h1,1,2);
	var_Items.set_CellValue(h1,2,9);
	var_Items.set_CellValue(h1,3,4);
	var_Items.set_ExpandItem(h,true);
axGrid1.EndUpdate();